是否可以与本地主机断开连接?
我正在编写一个 Node.js WebSocket 服务器,我想在本地测试如果连接错误关闭会发生什么。
如果我进行远程测试,我只需关闭 Wi-Fi,但这不会断开与本地主机的连接。
想法?
localhost
只是主机文件中的别名。如果删除该别名,那么您将有效地“断开”与本地主机的连接。
我不知道你会以什么方式做你所要求的事情,除了通过防火墙阻止端口或在本地主机上运行的程序。
正如 David 提到的,您可以使用简单的防火墙来阻止端口。
例如在 OSX 上,阻止端口 8080 上的本地主机
$ sudo ipfw add deny tcp from any to localhost 8080
将返回如下响应:
00100 deny tcp from any to 127.0.0.1 dst-port 8080
然后删除规则:
sudo ipfw delete 00100
(ipfw 已被弃用,取而代之的是 pfctl,但我仍然发现它对于这些目的来说更简单)
我没有使用 localhost,而是使用 IPv4 地址(可以使用 ipconfig 调用或查看本地连接来获取)来访问本地计算机,然后,为了模拟网络故障,我只是禁用本地连接。它帮助我测试本地计算机上的网络故障。
尝试: // 断开连接 sudo ifconfig lo down