配置SNAT实现共享上网2

本文详细介绍了如何通过配置SNAT策略实现局域网主机共享上网,并通过DNAT发布内网Web、SSH和FTP服务器,使得外部可以通过公网地址访问内网服务。内容包括SNAT规则设置、MASQUERADE伪装验证以及DNAT转换规则的创建和测试。
摘要由CSDN通过智能技术生成

 步骤

实现此案例需要按照如下步骤进行。
步骤一:搭建一套基于“局域网-Linux网关-互联网”的案例环境

沿用练习一的环境,稍作调整。
停用虚拟机svr5、gw1、pc120上的iptables服务,清空防火墙规则:

[root@gw1 ~]# service iptables stop
iptables:将链设置为政策 ACCEPT:filter                    [确定]
iptables:清除防火墙规则:                                 [确定]
iptables:正在卸载模块:                                   [确定]

去掉外网测试机pc120的路由设置:

[root@pc120 ~]# route del default gw 174.16.16.1
[root@pc120 ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
174.16.16.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

步骤二:在Linux网关上配置SNAT策略,实现局域网主机的共享上网
1)在网关启用SNAT转换之前,内网无法访问外网
比如从内网机svr5尝试访问外网机pc120时,因为pc120缺少到svr5所在私网网段的路由记录,所以访问会失败。这个与正常的互联网寻址情况是相吻合的,即私网地址不在互联网中路由。
使用elinks测试Web访问的情况如下:

[root@svr5 ~]# elinks --dump http://174.16.16.120
.. .. 
^C  //长时间无响应,按Ctrl+c键中止
[root@svr5 ~]# 

2)在gw1上添加SNAT转换规则
添加的规则应该在nat表内,将来自局域网段192.168.4.0/24、将要从外网接口eth1出去的数据包,在路由选择之后将数据包的源IP地址修改为网关gw1的外网接口的IP地址174.16.16.120:

[root@gw1 ~]# iptables -t nat -A POSTROUTING -s 192.168.4.0/24 -o eth1 -j SNAT --to-source 174.16.16.1

[root@gw1 ~]# iptables -t nat -nL POSTROUTING
Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         
SNAT       all  --  192.168.4.0/24       0.0.0.0/0           to:174.16.16.1

3)再次测试从内网访问外网
从内网机svr5上访问外网机pc120的网站,可以成功看到网页:

[root@svr5 ~]# elinks --dump http://174.16.16.120
   Test Page 120.

但是在检查pc120的Web访问日志时,可以看到来访的客户机地址其实是网关gw1的外网地址,说明网关已经通过SNAT规则把Web请求包的源地址192.168.4.5改成了174.16.16.

在ENSP中配置SNAT(静态网络地址转换)可以实现内部私有IP地址与外部公共IP地址之间的转换,从而实现内部主机访问外部网络的功能。以下是在ENSP中配置SNAT的步骤: 1. 打开ENSP模拟器,并导入相应的拓扑文件。 2. 在ENSP中选择需要配置SNAT的设备,例如防火墙设备。 3. 进入设备的命令行界面,使用以下命令进入防火墙的配置模式: ``` configure terminal ``` 4. 创建一个SNAT地址池,用于将内部私有IP地址转换为外部公共IP地址。使用以下命令创建SNAT地址池: ``` ip pool snat-pool 10.0.0.0 10.0.0.255 ``` 这里的地址范围可以根据实际情况进行调整。 5. 创建一个ACL(访问控制列表),用于定义需要进行SNAT转换的流量。使用以下命令创建ACL: ``` acl number 2000 rule 5 permit source 192.168.0.0 0.0.0.255 ``` 这里的源地址范围可以根据实际情况进行调整。 6. 创建一个SNAT策略,将ACL和SNAT地址池绑定在一起。使用以下命令创建SNAT策略: ``` nat-policy snat policy1 acl 2000 address-group snat-pool ``` 7. 将SNAT策略应用到相应的接口上。使用以下命令将SNAT策略应用到接口上: ``` interface GigabitEthernet 0/0/1 nat-policy snat policy1 outbound ``` 这里的接口名称可以根据实际情况进行调整。 8. 保存配置并退出配置模式: ``` commit quit ``` 通过以上步骤,你已经成功在ENSP中配置了SNAT。这样,内部主机就可以通过SNAT转换后的公共IP地址访问外部网络了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值