我正在试验 Linux(Debian 5.10)网络连接两个网络(例如 192.168.0.0/24 和 172.17.0.0/16)在一起。
设置
就我而言,它是一台带有一个 NIC 的小型服务器,托管 VM/docker,我想将其连接到物理 LAN。
我和服务器都是通过廉价的 ISP 路由器/交换机组合进行连接的。
为了允许路由,我为该 ISP 路由器配置了额外的路由。
测试
从服务器(VM/docker,也是路由器)到我的计算机,我可以发送(并且可以在服务器上看到)UDP 和 TCP 流量。
在对面的网站上:UDP 工作正常,但 TCP... 有点。我无法完全打开连接。
但是,如果我不是从 ISP 路由器设置路由而是将其放在我的计算机上,则一切都正常。
另一个可行的方法是,如果使用与我位于同一子网中的 IP,由于服务器也是路由器,因此它有一个。但这不是我想要的。
泪珠攻擊!?
TCP SYN、SYN ACK 工作正常,我可以看到它们进入服务器并离开我的计算机。
然而,当我的计算机发送 SYN 时(我假设它是 SYN,因为服务器从未看到连接),该死的 ISP 路由器会记录泪滴攻击并丢弃数据包。
从我读到的有关泪滴的内容来看,这是当您尝试创建具有无效长度/偏移量的碎片包时发生的。
我打开 wireshark 查看 SYN 包:
- SYN 设置“不分片”标志
- 我看不出段偏移量(它是 0)或总长度(40)有什么奇怪的地方——包括 PSH、ACK
- 如果我将该套餐与良好的连接进行比较,我看不出有什么区别
- 从网上的一个示例中可以看出,如果出现问题,wireshark 会明确将详细信息行设置为红色,此外,信息栏中还会有关于出现问题的注释。我没有遇到过类似的事情。
我正在寻找任何提示来允许软件包通过而无需禁用防火墙或设置更好的路由器。
谢谢