package main
import (
"fmt"
"net"
)
func main() {
var localaddr net.TCPAddr
var remoteaddr net.TCPAddr
localaddr.IP = net.ParseIP("192.168.1.104")
localaddr.Port = 6000
remoteaddr.IP = net.ParseIP("192.168.1.104")
remoteaddr.Port = 5000
if localaddr.IP == nil || remoteaddr.IP == nil {
fmt.Println("error")
}
if _, err := net.DialTCP("tcp", &localaddr, &remoteaddr); err != nil {
fmt.Println(err)
}
fmt.Println("End")
}
如果該功能指定了本地IP地址,它將始終報告運行時錯誤「dial tcp 192.168.1.104:5000:提供了無效參數。我很困惑,對於本地IP地址,它是否始終爲零?在net.DialTCP中指定本地IP地址
去版本:1.1 Beta版 OS:Win7的64位
中去嘗試1.0.3,它似乎OK
測試與提示似乎工作正常。 – rputikar 2013-04-07 10:24:28
想要在建立TCP連接時提供本地地址是非常不尋常的,所以你可能想要使用'net.Dial(「tcp」,「192.168.1.104:5000」)'。如果您確實想要指定本地地址和端口,請檢查本地地址是否連接到本地PC,並且端口6000未使用。我在linux下試過你的例子,它工作的很好,所以這可能是一個Windows問題。 – 2013-04-07 15:29:16