iptables学习02-nat表应用
Posted lijianming180
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iptables学习02-nat表应用相关的知识,希望对你有一定的参考价值。
nat表应用实验
第一步 准备工作
- A机器两块网卡ens33(192.168.2.106)、再添加一块自定义网卡ens37(192.168.100.1),添加到LAN内网区段(自定义名字,写什么无所谓),ens33可以上外网,ens37仅仅是内部网络。
- B机器是虚拟机里克隆A机器的,把ens33禁掉,只有ens37(192.168.100.100),和A机器ens37可以通信互联。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20先在虚拟机里面设置一下,添加一块网卡
A
ifconfig ens37 192.168.2.106/24 自定义网卡IP
把网卡配置文件的MAC什么的再修改一下
B
ifdown ens33 ban掉网卡
ifconfig ens37 192.168.100.100/24 自定义网卡IP
A
ping ens37 192.168.100.100 yes
B
ping ens37 192.168.100.1 yes
ping www.baidu.com no
Windows CMD
ping 192.168.100.1 no
ping 192.168.100.100 no
第二步 需求1:可以让B机器连接外网 (小路由器的功能)
A机器打开端口转发
1
2
3echo "1">/proc/sys/net/ipv4/ip_forward 端口转发配置文件默认是0,表示关闭。
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE
增加一条规则,有了这条规则,可以把100.0这个网段做一个欺骗,让它们可以上网,记住这个用法就可以了。B机器要设置一个网关
1
2
3
4
5
6
7
8
9
10
11
12
13
14route add default gw 192.168.100.1
route -n 确认网关
ping 192.168.2.106 yes
vi /etc/resolv.conf 设置DNS
233.5.5.5
ping 233.5.5.5 yes
ping www.baidu.com yes
大专栏 iptables学习02-nat表应用Windows CMD
ping 192.168.100.100 no
B可以连接外网了,但是外网还是ping不通这个100的ip
第三步 需求2:C机器只能和A通信,让C机器可以直接连通B机器的22端口
A机器打开端口转发,并添加规则
1
2
3
4
5
6
7
8echo "1">/proc/sys/net/ipv4/ip_forward 端口转发配置文件默认是0,表示关闭。
iptables -t nat -D POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE 删除上面那个之前的规则
添加新规则
iptables -t nat -A POSTROUTING -d 192.168.2.106 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22
进来的包,130转发到100IP的22端口
iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.2.106
传出的包,100回到130的包,设置来源IP为130B机器要设置一个网关
1
2
3route add default gw 192.168.100.1
route -n 确认网关
ping 192.168.2.106 yes测试是否可以用xshell登录A机器
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18ssh
主机 192.168.2.106
端口 1122
密码 ***
连接OK
ifconfig
... ...
ens33 无
ens37 192.168.100.100
ping www.qq.com yes,可以连接外网
w
from
192.168.2.1 上网是从windows机器上的
扩展
- iptables应用在一个网段
http://www.aminglinux.com/bbs/thread-177-1-1.html - sant,dnat,masquerade
http://www.aminglinux.com/bbs/thread-7255-1-1.html - iptables限制syn速率
http://www.aminglinux.com/bbs/thread-985-1-1.html
以上是关于iptables学习02-nat表应用的主要内容,如果未能解决你的问题,请参考以下文章
iptables filter表案例/iptables nat表应用
iptables filter表案例,iptables nat表应用