iptables - 2 互联网提供商 - 路由

iptables - 2 互联网提供商 - 路由

我有 2 个互联网连接,通过 2 个路由器 (Fritzbox) 接收,位于以下 fritz-n 和 fritz-t 中。

每个 fritzbox 都有来自不同服务提供商的自己的互联网连接。两个路由器都只是建立互联网连接并将所有流量发送到我的服务器上的不同接口(itf prox2)

fritz-n (192.168.36.254) ---> eth1 上的 192.168.36.253
fritz-t (192.168.26.254) ---> eth2 上的 192.168.26.253

我们主要使用 fritz-n 上的互联网连接,fritz-t 用于故障转移和我们的室友。

我设置了2个子域(office-t.abc.xyz和office-n.abc.xyz),每个子域都为其路由器设置了一条A记录。

我的问题是,当我打开到 office-n.abc.xyz -p 22 的 ssh 连接时,它工作正常,但是当我打开到 office-t.abc.xyz -p 22 的 ssh 连接时,我无法连接。所有路由器都配置为暴露主机,因此它们绝对不会过滤任何连接。

有谁知道我做错了什么?

自动 eth1
iface eth1 inet 静态
        地址 192.168.36.253
        网络掩码 255.255.255.0
        up /sbin/route 添加默认 gw 1​​92.168.36.254 metric 0 eth1
        向下 /sbin/route del 默认 gw 1​​92.168.36.254 指标 0 eth1

自动 eth2
iface eth2 inet 静态
        地址 192.168.26.253
        网络掩码 255.255.255.0
        up /sbin/route 添加默认网关 192.168.26.254 指标 1 eth2
        向下 /sbin/route del 默认 gw 1​​92.168.26.254 指标 1 eth2

iptables:

 
# 由 iptables-save v1.4.21 于 2017 年 9 月 28 日星期四 07:08:40 生成
*损坏
:预路由接受 [270255645:213936245583]
:输入接受[31520001:38963026250]
:转发接受 [238659546:174959469047]
:输出接受[17349995:1535871362]
:后路由接受 [255986358:176485117432]
犯罪
# 于 2017 年 9 月 28 日星期四 07:08:40 完成
# 由 iptables-save v1.4.21 于 2017 年 9 月 28 日星期四 07:08:40 生成
*筛选
:输入接受[31516323:38962721398]
:转发接受 [238471146:174935725039]
:输出接受[17322993:1524849152]
# 于 2017 年 9 月 28 日星期四 07:08:40 完成
# 由 iptables-save v1.4.21 于 2017 年 9 月 28 日星期四 07:08:40 生成
*nat
:预路由接受[1148316:120418773]
:输入接受[538183:39312329]
:输出接受[179594:13556948]
:后路由接受 [448655:42796545]
- 预路由! -i vmbr0 -p tcp -m tcp --dport 1195 -j DNAT --到目的地 192.168.16.15:1195
- 预路由! -i vmbr0 -p udp -m udp --dport 1195 -j DNAT --到目的地 192.168.16.15:1195
- 预路由! -i vmbr0 -p tcp -m tcp --dport 8080 -j DNAT --到目的地 192.168.16.5:8080
- 预路由! -i vmbr0 -p tcp -m tcp --dport 10222 -j DNAT --到目的地 192.168.16.85:22
- 预路由! -i vmbr0 -p tcp -m tcp --dport 22 -j DNAT --到目的地 192.168.16.3:22
-A 后路由 -o eth1 -j 伪装
-A 后路由 -o eth2 -j 伪装
犯罪
# 于 2017 年 9 月 28 日星期四 07:08:40 完成

答案1

当您通过 eth2 连接时,您的传出数据包不是通过 eth1 路由吗?然后他们会伪装起来,从不同的地址来到您的 ssh 客户端,并且没有资格建立连接。

运行 tcpdump 或将日志记录条目添加到 iptables 规则中可以帮助查看哪些数据包通过了哪里。

相关内容