Iptables-3·配置SNAT链

作者: 技术老男孩 | 来源:发表于2022-12-16 08:32 被阅读0次

一、实验环境:

拓扑图.png

二、需求描述:

  • 互联网环境下,运营商不允许私有地址出现在互联网上,发现有这样的数据,就直接丢弃。所以,私有地址发往互联网时,需要用NAT转换成公有地址,也叫合法地址。
  • 在实验环境下,在node1上配置NAT,当client1访问server1时,将client1的地址转换成server1的192.168.99.x再发给server1。因为数据包的源地址改变了,所以叫SNAT,S即Source。
  • node1作为client1和server1的网关设备,所以目前client1可以访问server1,server1看到的是客户端地址是client1的地址。
# 跟踪httpd日志的尾部
[root@server1 ~]# tail -f /var/log/httpd/access_log 

# 在client上访问server1的web服务
[root@client1 ~]# curl http://192.168.99.100/

# 查看服务器终端的日志
# 将会显示client1的地址192.168.88.10访问了它
192.168.88.10 - - [13/Oct/2021:17:31:35 +0800] 
"GET / HTTP/1.1" 403 4897 "-" "curl/7.29.0"
  • 需求:将源地址192.168.88.0/24转换成它外网卡地址。

三、功能实现:

  • 向nat表中的POSTROUTING链添加规则。
[root@node1 ~]# iptables -t nat -A POSTROUTING 
> -s 192.168.88.0/24 -j MASQUERADE
[root@node1 ~]# iptables -t nat -nL
  • 访问验证
# client1再次访问server1时server1上的日志
# 将会显示node1的192.168.99.11访问
[root@server1 ~]# tail -f /var/log/httpd/access_log 
192.168.99.11 - - [13/Oct/2021:17:45:07 +0800] 
"GET / HTTP/1.1" 403 4897 "-" "curl/7.29.0"

相关文章

网友评论

    本文标题:Iptables-3·配置SNAT链

    本文链接:https://www.haomeiwen.com/subject/eqwmfdtx.html