转到网络拨号问题

时间:2018-07-06 09:54:02

标签: go tcp netcat

我在通过tls.dial或net.dial连接到本地golang TLS服务器时遇到一些问题。服务器ist以地址localhost:10001开头,我可以使用netcat(仅是netcat localhost 10001)连接到该服务器,但是尝试使用golangs的Dial方法进行连接(拒绝连接)。这可能是什么原因?需要指出的重要一件事是,我正在Debian VM上对其进行测试,并在其中卸载了网络管理器,以便可以自己配置网络接口(静态ip)。我的猜测是net.dial在找到正确的接口时会遇到一些问题,但是netcat不能做到golang的方法呢?我在两端尝试了所有不同类型的地址(本地主机上的服务器,:: 1、127.0.0.1;客户端相同)。在我的Windows主机系统上,它可以正常工作(因此,问题可能与服务器无关)。 预先感谢。

    conn, err := tls.Dial("tcp", h.IP+":"+h.Port, conf)
if err != nil {
    log.Println(err)
    return empty
}

// do cleanup
defer conn.Close()

d := Craft_PKG( data )


//write package
WriteChunks( conn, d )

这是客户端代码,也是

    ln, err := tls.Listen("tcp", "localhost:"+(*port), config)
if err != nil {
    log.Println(err)
    return err
}
defer ln.Close()

for {
    conn, err := ln.Accept()
    if err != nil {
        log.Println(err)
        continue
    }
    // start the handler for every incoming connection
    go h(conn)
}

服务器代码。一切都非常简单,并且可以在netcat和我提到的Host系统中使用。

0 个答案:

没有答案