详解Linux下端口映射

端口映射器可实现端口映射功能,一个主要用途就是可以在局域网的网关上运行本程序,将网关服务器的某个端口映射为局域网中某台机器的某个端口,这样,局域网外部访问网关服务器的8081端口就相当于访问了局域网内部某台机器的80端口了。

创新互联建站是一家集网站建设,广元企业网站建设,广元品牌网站建设,网站定制,广元网站建设报价,网络营销,网络优化,广元网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

打开 IP 转发

打开 IP 转发(路由器设备是默认打开的),必须允许 IP 转发,否则即使设置了 nat 映射规则,也是不能发生映射的,因为不开启转发,包不能被发过去。

echo 1 > /proc/sys/net/ipv4/ip_forward

从一台机器映射到另一台机器

映射关系 192.168.122.1:80 —> 192.168.122.221:80 192.168.122.221 在 80 端口开启了 nginx 服务器 本地链路的报文是不需要经过 PREROUTING 与 POSTROUTING 的,所以必须配置 OUTPUT 否则在本机上测试会发现转发规则无效!

  • 在 192.168.122.1 配置如下规则,然后在 192.168.122.1(本机) 的机器能访问 “192.168.122.1:80”
iptables -t nat -A OUTPUT -p tcp -d 192.168.122.1 --dport 80 -j DNAT --to 192.168.122.221:80
  • 在 192.168.122.1 配置如下规则,然后在 192.168.122.29(其他设备) 能访问 ”192.168.122.1:80“
# 配置目的地址转换
iptables -t nat -A PREROUTING -p tcp -d 192.168.122.1 --dport 80 -j DNAT --to 192.168.122.221:80
# 配置源地址转换
iptables -t nat -A POSTROUTING -p tcp -d 192.168.122.221 --dport 80 -j SNAT --to 192.168.122.1

从本机一个端口到另一个端口

映射关系 192.168.122.221:8080 —> 192.168.122.221:80 本地链路上的报文是不需要经过 PREROUTING 与 POSTROUTING 的,所以必须配置 OUTPUT 否则在本机上测试会发现转发规则无效! 192.168.122.221 在 80 端口开启了 nginx 服务器

  • 在 192.168.122.221 配置如下规则, 8080 映射到 80,这样本机能访问 “127.0.0.1:8080”
iptables -t nat -A OUTPUT -p tcp -d 127.0.0.1 --dport 8080 -j DNAT --to-port 127.0.0.1:80
  • 在 192.168.122.221 配置如下规则, 8080 映射到 80,这样能访问 “192.168.122.221:8080”
iptables -t nat -A PREROUTING -p tcp --dport 8080 -j REDIRECT --to-ports 80

其他

# 查看 nat 链规则
iptables -t nat -L -n --line-number

# 删除规则 POSTROUTING 的规则 1
iptables -t nat -D POSTROUTING 1

文章名称:详解Linux下端口映射
当前网址:http://www.shufengxianlan.com/qtweb/news48/126448.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联