iptables综合实验: 两个私有网络的互相通迅

image

环境准备:

主机A IP:192.168.0.6/24 网关改为192.168.0.8
firewallA IP:eth1 192.168.0.8/24 eth0 10.0.0.8/24 删除默认路由
主机B IP:172.16.0.7/24 网关改为172.16.0.18
firewallB IP:eth1 172.16.0.18/24 eth0 10.0.0.18/24 删除默认路由

firewallA

[root@firewallA ~]#vim /etc/sysctl.conf
[root@firewallA ~]#sysctl -p
net.ipv4.ip_forward = 1
[root@firewallA ~]#route del default
[root@firewallA ~]#iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
[root@firewallA ~]#iptables -t nat -A PREROUTING -d 10.0.0.8 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.6:80
[root@firewallA ~]#route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
192.168.0.0 0.0.0.0 255.255.255.0 U 101 0 0 eth1
image

image

firewallB

[root@firewallB ~]#vim /etc/sysctl.conf
[root@firewallB ~]#sysctl -p
net.ipv4.ip_forward = 1
[root@firewallB ~]#route del default
[root@firewallB ~]#iptables -t nat -A POSTROUTING -s 172.16.0.0/24 -j MASQUERADE
[root@firewallB ~]#iptables -t nat -A PREROUTING -d 10.0.0.28 -p tcp --dport 80 -j DNAT --to-destination 172.16.0.7:80
[root@firewallB ~]#route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 0.0.0.0 255.255.255.0 U 101 0 0 eth0
172.16.0.0 0.0.0.0 255.255.255.0 U 100 0 0 eth1
image

测试:

[root@HOSTA ~]#curl 10.0.0.28
welcome to 8.333333333
image

[root@HOSTB ~]#curl 10.0.0.8
welcome to 192.168.0.6
image

总结:

SNAT: 实现内部网络访问外部网络,将请求报文中的源地址和源端口转化成公网地址和端口
DNAT:实现外部网络访问内部网络,将请求报文中的目的地址和端口转化成内网地址和端口
REDIRECT:本机端口转发,将请求转发至本机的另一个端口

posted @ 2022-08-18 14:11  大雨转暴雨  阅读(94)  评论(0编辑  收藏  举报