Tcp 网络-绑定到本地主机

Tcp 网络-绑定到本地主机,tcp,network-programming,localhost,Tcp,Network Programming,Localhost,我有一个关于绑定和连接到localhost的一般性问题。我正在使用TCP客户端/服务器,在服务器端,我执行以下操作: bind(localhost, 9999); listen(); 这是在名为host1的unix主机上完成的 现在,客户端正在同一网络上的一个单独的Windows设备上运行。为了连接,我尝试通过hostname:port,hostIp:port进行连接,但均未成功 这是因为绑定到localhost在网络上不可见,其他进程无法连接到它,并且用于同一台计算机上运行的客户端/服务器吗

我有一个关于绑定和连接到
localhost
的一般性问题。我正在使用TCP客户端/服务器,在服务器端,我执行以下操作:

bind(localhost, 9999);
listen();
这是在名为host1的unix主机上完成的

现在,客户端正在同一网络上的一个单独的Windows设备上运行。为了连接,我尝试通过
hostname:port
hostIp:port
进行连接,但均未成功


这是因为绑定到localhost在网络上不可见,其他进程无法连接到它,并且用于同一台计算机上运行的客户端/服务器吗?

如果您绑定到localhost(即127.0.0.1),则只能接受来自localhost的连接,而不能通过网络

如果需要通过网络接受远程连接,则应绑定到一个本地IP地址(例如192.168.0.10)或所有接口(例如0.0.0.0)

这是因为127.0.0.1始终是本地环回地址,因此从不通过网络路由