都是192.168.6.143访问的,说明试验成功
2.DNAT目标网络地址转换
假如说公司内部有一个人出差了,在互联网上想访问公司内部一个服务器,这要怎么做呢?如图:
当互联网上的主机访问192.168.6.143的80端口时,就给他转到192.168.66.177的80端口
实验环境:
假设:192.168.6.52 互联网上的主机,一块网卡,桥接
192.168.6.143和192.168.66.128 防火墙主机,两块网卡,一块桥接,一块仅主机
192.168.66.177 内网的主机 ,一块网卡,仅主机
实验目的:实现互联网上的主机能够访问内网主机开启的httpd服务
(1)在内网主机(192.168.66.177)上,将网关指向192.168.66.128
route add default gw 192.168.66.177
(2)在防火墙主机上做目标地址转换,将目标地址192.168.6.143转换为192.168.66.177
iptables -t nat -A PREROUTING -d 192.168.6.143 -p tcp --dport 80 -j DNAT --to-destination 192.168.66.177:80
(3)在内网主机(192.168.66.177)开启httpd服务
systemctl start httpd
echo hello world > /var/www/html/index.html
(4)测试
在互联网上的主机上用curl命令访问192.168.10.143
(5)我们在内网主机上看日志,确实是互联网上的主机访问的
3.转发
实现其他人访问我本机的一个端口(如:80),给他转发到本机的另一个端口(如:8080)上
我们基于上一个实验来做本实验
(1)将内网主机上httpd服务端口改成8080
vim /etc/httpd/conf/httpd.conf
Listen 8080
重启服务 systemctl restart httpd
ss -ntl 查看端口
现在只有8080端口,没有80端口
(2)在内网主机(192.168.66.177)上设置转发策略,如果访问本机的80端口就给转发到本机的8080端口
iptables -t nat -A PREROUTING -d 192.168.66.177 -p tcp --dport 80 -j REDIRECT --to-ports 8080
(3)测试
在互联网主机(192.168.6.52)上用curl来访问防火墙主机192.168.6.143
curl 192.168.6.143