CentOS下iptables的端口映射
分类:CentOS教程 阅读:58261 次
一、环境与需求
实验环境
节点的网络设置如下:
节点 | 网卡 | IP | 网络 |
---|---|---|---|
Node1 | eth0 | 172.19.104.33 | 内网 |
Node1 | eth1 | 6.6.5.5 | 外网 |
Node2 | eth0 | 172.19.104.14 | 内网 |
需求
我们要实现的功能就是将Node1的8100端口映射到Node2的8000端口,也即外网访问http://6.6.5.5:8100即可访问到PC2上8000端口的WEB服务。
二、实现步骤
以下操作都在Node1上进行操作,部分修改操作可能需要root权限
1、 首先编辑/etc/sysctl.conf
配置文件的net.ipv4.ip_forward = 1
默认是0,再执行sysctl -p
使其生效
或直接执行
echo 1 > /proc/sys/net/ipv4/ip_forward
2、 执行
iptables -t nat -A PREROUTING -d 172.19.104.33 -p tcp --dport 8100 -j DNAT --to-destination 172.19.104.14:8000 iptables -t nat -A POSTROUTING -d172.19.104.14 -p tcp --dport 8000 -j SNAT --to 172.19.104.33 iptables -A FORWARD -o eth0 -d172.19.104.14 -p tcp --dport 8000 -j ACCEPT iptables -A FORWARD -i eth0 -s 172.19.104.14 -p tcp --sport 8000 -j ACCEPT iptables save
注意IP、端口、网卡的配置
或直接修改位置文件
编辑/etc/sysconfig/iptables
添加以下内容
以下为参考文件,根据具体情况进行修改
... -A PREROUTING -d 172.19.104.33 -p tcp -m tcp --dport 8100 -j DNAT --to-destination 172.19.104.14:8000 -A POSTROUTING -d 172.19.104.14 -p tcp -m tcp --dport 8000 -j SNAT --to-source 172.19.104.33 ... -A FORWARD -o eth0 -d 172.19.104.14 -p tcp --dport 8000 -j ACCEPT -A FORWARD -i eth0 -s 172.19.104.14 -p tcp --dport 8000 -j ACCEPT ...
3、重启iptables
/etc/init.d/iptables restart
或
service iptables restart
三、测试
现在访问http://6.6.5.5:8100即可访问到Node2上8000端口的WEB服务。
热门推荐
- CentOS7修改服务器主机名方法
- centos磁盘爆满,查找大文件并清理
- CentOS下如何查找大文件
- CentOS服务器的基本配置和查看
- CentOS服务器设置ntpdate同步网络时间
- CentOS配置SSH单向无密码访问
- CentOS7系统systemd详解
- CentOS安装JDK 1.7
- CentOS配置本地yum源
- CentOS服务器下HTTP性能能测试nginx与Apache对比
- CentOS下Apache与Nginx性能测试对比
- CentOS下手动启动oracle
- 阿里云CentOS服务器增加swap空间
- CentOS6.5系统服务详细说明
- CentOS 6.5系统定制自动化部署
- Centos 7 更改网卡名字
- CentOS学习路线指南
- CentOS6.5启动界面的更改
- CentOS下VIM实用基本操作技巧
- CentOS常用指令