我编辑了 iptables,以便当 VPN 服务断开时,没有程序可以访问互联网。
好吧,我做了一个实验。我手动断开了 VPN 服务,然后立即通过发出以下命令执行 ping 操作:
sudo ping www.yahoo.com
结果如下:
PING ds-any-fp3-real.wa1.b.yahoo.com (206.190.36.45) 56(84) bytes of data.
ping: sendmsg: Operation not permitted
ping: sendmsg: Operation not permitted
ping: sendmsg: Operation not permitted
ping: sendmsg: Operation not permitted
ping: sendmsg: Operation not permitted
ping: sendmsg: Operation not permitted
ping: sendmsg: Operation not permitted
ping: sendmsg: Operation not permitted
^C
--- ds-any-fp3-real.wa1.b.yahoo.com ping statistics ---
8 packets transmitted, 0 received, 100% packet loss, time 7056ms
在 ping 会话期间,是否有任何数据(包括地理位置信息)从我的计算机发送出去并被目标方接收?
答案1
我认为您担心该8 packets transmitted
消息。
应用ping
程序生成数据包并将其提交给内核进行处理。这些是 ping 统计信息中报告的“已传输”数据包。当数据包进入 iptables 链时,它们可以被接受、丢弃或拒绝。
Ping 说sendmsg: Operation not permitted
因为应用程序发送的数据包未被接受。所以答案是否定的,ping 发送的数据包没有离开你的计算机。
但,正如说经过阿拉,您 ping 了 www.yahoo.com,该名称已成功解析为地址 (206.190.36.45)。只有当您的计算机发送 DNS 查询并收到回复,或者该名称位于 DNS 缓存中时,才会发生这种情况,不应该发生默认情况下(感谢@Alaa)。
如果 VPN 断开连接,您确定所有流量都被阻止了吗?也许您没有阻止 DNS。您应该只接受发往 VPN 网关的输出流量。