通过特定接口强制将所有传出请求发送到端口80

时间:2019-01-22 04:07:18

标签: forwarding nic

几天来我一直在寻找答案,但在线发布的答案却无效。这仅仅是为了更好地了解iptables和路由的工作方式

  • 服务器1-192.168.10.100:80上的网络服务器
  • 服务器2-2个NIC 192.168.10.101(ens33)和192.168.10.102(ens37)

已经设置了规则,因此没有ARP流量,并且两台服务器的ping b / w通过正确的NIC

我要在服务器2上-curl --interface ens37 192.168.10.100,但通过ens33发送。

我的脚本-

  • iptables -t mangle -I输出-s 192.168.10.102 -p tcp --dport 80 -j 标记-设定标记99
  • iptables -t mangle -I输出-m mark --mark 99 -j LOG --log-level emerg --log-prefix“ mark = 99”(检查标记是否正常工作)
  • iptables -t nat -I POSTROUTING -s 192.168.10.102 -p tcp --dport 80 -j SNAT-源192.168.10.101
  • ip规则添加fwmark 99表3优先级77
  • ip路由添加192.168.10.0/24 dev ens33表3
  • 对于/ proc / sys / net / ipv4 / conf / * / rp_filter中的f;回显0> $ f;完成

ip规则显示

  • 0:从所有本地查找
  • 77:从所有fwmark 0x63查找3
  • 100:从192.168.10.101查找1
  • 200:从192.168.10.102查找2
  • 32766:从所有主查询中查找
  • 32767:默认所有查找方式

ip路由显示

  • 默认为通过192.168.10.2 dev ens33 proto静态指标100
  • 默认为通过192.168.10.2 dev ens37 proto静态指标101
  • 192.168.10.0/24 dev ens33原型内核作用域链接src 192.168.10.101指标100
  • 192.168.10.0/24 dev ens37 proto内核作用域链接src 192.168.10.102指标101
  • 192.168.122.0/24 dev virbr0原型内核作用域链接src 192.168.122.1

ip路由显示标签1

  • 192.168.10.0/24 dev ens33作用域链接

ip路由显示标签2

  • 192.168.10.0/24 dev ens37作用域链接

ip路由显示标签3

  • 192.168.10.0/24 dev ens33作用域链接

通过ens37进行的卷曲不会通过ens33进行路由。

任何帮助将不胜感激

0 个答案:

没有答案