大家好,并提前感谢您的帮助。
我的情况是,我需要在一个内部网络上测试不稳定的Internet连接,并通过另一个网络发送任何问题(显然需要Internet连接)的电子邮件警报 - 。
我的硬件具有双nic,并计划在vb中编写简单的东西。
有没有办法可以在我的“好”中禁用ping功能。连接迫使它通过测试网络但是允许smtp?
我已经查看了路由并完成了一些基本的测试,但是看起来ping网络在网络出现故障后不久会通过良好的网络自动重新路由?
热烈欢迎任何建议。
答案 0 :(得分:0)
你甚至不应该考虑阻止ICMP。这是造成许多问题的好方法。相反,您应该明确指定用于ping请求的接口。
如果您正在使用命令行ping,通常通过指定用于发送数据包的源IP来执行此操作。例如,在OS X上,您可以运行命令
ping -c 5 -S 10.0.1.13 8.8.8.8
使用IP地址为10.0.1.13的接口ping Google的公共DNS服务器(8.8.8.8)。如果具有该IP的接口关闭,则ping将失败。
具体标志因实施而异。
如果您正在编写自己的ping代码IIRC,则只需使用bind()
系统调用将套接字绑定到该源地址。