使用 Solaris IPF 将某些 IP 从端口 80 重定向到端口 8080

使用 Solaris IPF 将某些 IP 从端口 80 重定向到端口 8080

有谁对 Solaris 10 防火墙足够熟悉,能够为 ipf 重现以下 iptables 规则吗?

-A PREROUTING  -p tcp -m tcp !--src-range 192.168.1.100-192.168.1.200 -dport 80 -j REDIRECT --to-ports 8080

基本上,我想将所有流向 IP 上端口 80 的流量重定向到端口 8080(理想情况下,我只想对不在特定范围内的源 IP 执行此操作)

答案1

ipf.conf手册页中:

..目前没有办法[..]来匹配不能轻易以位掩码形式表达的 IP 地址范围。

你可以使用多条规则让它工作,尽管这样不太好。下面的规则ipnat.conf应该可以满足你的要求(假设e1000g0是你的网络接口,并且假设我已经正确地完成了子网掩码计算):

rdr e1000g0 ! from 192.168.1.0/24 to any port = 80 -> 127.0.0.1 port 8080 tcp
rdr e1000g0 from 192.168.1.0/26   to any port = 80 -> 127.0.0.1 port 8080 tcp
rdr e1000g0 from 192.168.1.64/27  to any port = 80 -> 127.0.0.1 port 8080 tcp
rdr e1000g0 from 192.168.1.96/30  to any port = 80 -> 127.0.0.1 port 8080 tcp
rdr e1000g0 from 192.168.1.201/32 to any port = 80 -> 127.0.0.1 port 8080 tcp
rdr e1000g0 from 192.168.1.202/31 to any port = 80 -> 127.0.0.1 port 8080 tcp
rdr e1000g0 from 192.168.1.204/30 to any port = 80 -> 127.0.0.1 port 8080 tcp
rdr e1000g0 from 192.168.1.208/28 to any port = 80 -> 127.0.0.1 port 8080 tcp
rdr e1000g0 from 192.168.1.224/27 to any port = 80 -> 127.0.0.1 port 8080 tcp

相关内容