我有两个 4G 调制解调器连接到网络并发送和接收数据。但存在一个问题,因为数据包的源 IP 地址不正确,调制解调器不断从网络中被踢出。看来源自数据卡 1 的数据包具有数据卡 2 的源 IP 地址。
移动网络根据所连接调制解调器的 IP 地址检查数据包的源 IP 地址,发现不匹配并将该调制解调器踢出网络。
我需要纠正此问题并让两个调制解调器发送具有正确源 IP 地址的 IP 数据包。然而,我在这类事情上非常缺乏经验,我非常感谢一些关于起点的建议。我相信 IP 表和 IP 路由已经检查过,但并没有解决这个问题。
答案1
这听起来就像您在同一台计算机上同时使用两个调制解调器卡两次连接到同一网络。这在大多数情况下不起作用。通过两个等效的上行链路,您的操作系统无法知道应该使用哪个上行链路。如果您检查路由表 ( ip route show
),您可能会检测到两条默认路由和/或两条通往提供商同一子网的路由。您需要消除路由表中的任何歧义。第一种方法删除一条默认路由和到提供商子网的相应(同一接口)路由。这基本上会使你的一张卡变得无用,但应该可以解决你的连接问题。
为了获得更多/更好的帮助,我们需要知道您想用 2 张 4g 卡做什么。一条上行链路足以访问互联网......
答案2
除了已经说过的内容(您提到了 iptables,但没有提到您用它做了什么)...您是否尝试过 MASQing 离开您机器的流量?
例如
iptables -t nat -I POSTROUTING -o 4g-interface-1 -j MASQUERADE
和
iptables -t nat -I POSTROUTING -o 4g-interface-2 -j MASQUERADE