设置linux端口转发
2015-08-07 16:55
465 查看
设置linux端口转发
假设有两台服务器,A和B。我需要把访问A服务器的8081端口的数据转发到B服务器的8081端口,并接收B服务器的响应数据。
命令如下:
#echo 1 > /proc/sys/net/ipv4/ip_forward
#iptables -t nat -I PREROUTING -p tcp --dport 8081 -j DNAT --to xx.xx.xx.xx
#iptables -t nat -I POSTROUTING -p tcp --dport 8081 -j MASQUERADE
#service iptables save
#service iptables restart
===========================================================
第一条命令表示允许数据包转发;
第二条命令表示转发TCP 8081到xx.xx.xx.xx;
第三条命令表示使转发数据包实现“双向通路”,给数据包设置一个正确的返回通道。
第四条命令表示将规则保存到/etc/sysconfig/iptables文件
第五条命令表示重启iptables使刚才添加的规则生效
很多人按照网上的方法作端口映射,始终没有成功的原因是没有执行第四、第五条命令。
注:如果执行上述命令,依然不能转发,可能由于iptables服务没有停止,命令无法写入iptables文件,应先执行service iptables stop,再执行上述命令,最后service iptables start再启动服务
假设有两台服务器,A和B。我需要把访问A服务器的8081端口的数据转发到B服务器的8081端口,并接收B服务器的响应数据。
命令如下:
#echo 1 > /proc/sys/net/ipv4/ip_forward
#iptables -t nat -I PREROUTING -p tcp --dport 8081 -j DNAT --to xx.xx.xx.xx
#iptables -t nat -I POSTROUTING -p tcp --dport 8081 -j MASQUERADE
#service iptables save
#service iptables restart
===========================================================
第一条命令表示允许数据包转发;
第二条命令表示转发TCP 8081到xx.xx.xx.xx;
第三条命令表示使转发数据包实现“双向通路”,给数据包设置一个正确的返回通道。
第四条命令表示将规则保存到/etc/sysconfig/iptables文件
第五条命令表示重启iptables使刚才添加的规则生效
很多人按照网上的方法作端口映射,始终没有成功的原因是没有执行第四、第五条命令。
注:如果执行上述命令,依然不能转发,可能由于iptables服务没有停止,命令无法写入iptables文件,应先执行service iptables stop,再执行上述命令,最后service iptables start再启动服务
相关文章推荐
- 搭建交叉编译器arm-linux-gcc
- 不错的Linux 博客
- linux基础——在redhat6下配置yum源的使用
- centos vagrant virtualbox
- linux中线程如何退出
- Linux配置DHCP服务器
- 15、Linux 备份策略
- linux随笔-2
- linux快捷键
- Linux下源码安装软件
- linux命令之进程级的操作
- linux命令之文件级的操作
- linux命令之SVN操作
- linux svn提交错误
- Linux IPC (Semaphore)
- Linux Notes
- linux命令之数据库操作
- linux ftok()函数
- Linux内核:通过wait_event和wake_up内在机制分析等待队列
- Linux - 延伸正则表达式