![如何证明提供商正在阻止某些端口的传入流量?](https://linux22.com/image/1381884/%E5%A6%82%E4%BD%95%E8%AF%81%E6%98%8E%E6%8F%90%E4%BE%9B%E5%95%86%E6%AD%A3%E5%9C%A8%E9%98%BB%E6%AD%A2%E6%9F%90%E4%BA%9B%E7%AB%AF%E5%8F%A3%E7%9A%84%E4%BC%A0%E5%85%A5%E6%B5%81%E9%87%8F%EF%BC%9F.png)
我希望这不会过多地关注家庭网络,因为这是我遇到的问题,但我认为它可能仍然引起普遍的兴趣。
我有一个有线连接(Cisco EPC3208)和一个 NAS(Synology DS413)。基本上,我在设置 samba 共享以从互联网访问时遇到了问题,但我发现问题更为普遍。假设我想在 NAS 上设置一个 SSH 服务器,我可以自由选择端口。如果我将 NAS 连接到路由器,我可以使用任何端口,SSH 服务器将在我的本地网络中的该端口下显示。现在,将 NAS 连接到有线调制解调器后,如果 SSH 服务器在端口 135、137、139、445、3127 和 9898 之一上运行,我将无法连接到 SSH 服务器。我测试的所有其他端口,包括 134、136、138、140、444、446、3126、3128、9897 和 9899,都可以正常工作。我可以从三个远程位置(工作地点、大学和 3G)以及使用外部端口扫描器 [1] 确认这一点。NAS 防火墙已关闭。因此,我很确定我的提供商阻止了这些端口上的传入流量,可能是“出于安全考虑”。
我的有线电视提供商(德国 Unitymedia)反复声称不会阻止任何流量。他们要求我联系路由器制造商(我告诉他们我不使用路由器),要求我仔细检查我的 NAS 配置(我告诉他们使用路由器时我可以很好地进行内部连接),等等等等——这里不感兴趣。
现在,我该怎么做才能证明他们确实阻止了这些端口上的流量(如果确实如此),无论是在他们的网络中还是在电缆调制解调器中?是否有任何方法可以跟踪发送到特定端口的数据包并查看其丢失的位置,类似于跟踪路由?
[1]http://www.heise.de/security/dienste/portscan/test/go.shtml?scanart=1
答案1
在我居住的地区(美国中部),封锁端口 135、137、138、139 和 445 被认为是一个好的网络邻居。
因此,这些端口可能被阻止到一定程度,以至于 ISP 已经忘记了它们被阻止了。
这些端口(与文件/打印共享/消息相关的所有 Windows)很可能主要在入口处被过滤。您可能可以在这些端口上的某个设备上运行嗅探器,但看不到进入这些端口的连接。
还有可能,这些是更靠近您的(多个)客户端测试点的出口过滤器。
答案2
这可能是 NAT(CGN)问题。据我所知,由于缺乏 IPv4 地址,Unitymedia 正在与新客户合作实施 DS-Lite。因此您没有真正的公共 IPv4 地址。
坏消息是,您与 64 个人共享您的公共 IPv4。因此您无法再使用 IPv4 中的端口转发从外部连接到您的网络。
好消息是,您有 IPv6,并且网络中的每个设备都有自己的 IPv6 地址。
检查连接:
http://www.heise.de/netze/tools/meine-ip-adresse/
一些链接:
http://www.synology-forum.de/showthread.html?40458-IPv6-Unitymedia-Wirrwar