linux端口映射命令是什么?使用iptables做端口映射shell的方法
端口映射是屬于NAT的一種,其功能是將公用網絡的地址轉換為私有地址的形式,主要是采用了路由的ADSL寬帶路由器方式來擁有公網的IP,將ADSL直接接在HUB或交換機上,所有的電腦都可以共享上網。而我們在linux的環境下進行端口映射時,就需要使用一些iptables的命令,而這種命令確實很少有人知道。還好小編“私藏”了一些,現在就將這些“私藏”的好東西分享給大家,希望對大家能有所幫助。

情形一:跨網絡、跨主機的映射Full-Nat
當我們進入到主機B的80端口時,有時會由于網絡的限制,可能導致無法直接完成。但是我們可以先行到達主機A的8080端口,而主機A是可以直接到達B的80端口。而這個時候我們就可以使用iptables,將主機B的80端口直接映射到主機A的8080端口,然后通過訪問A的8080端口就相當于訪問B的80端口。實現如下:
在主機A上直接輸入如下的命令,就可以實現端口映射的Full-Nat
#!/bin/bash
pro=’tcp’
NAT_Host=’Host_A’
NAT_Port=8080
Dst_Host=’Host_B’
Dst_Port=80
iptables -t nat -A PREROUTING -m -p --dport -j DNAT --to-destination :
iptables -t nat -A POSTROUTING -m -p --dport -d -j SNAT --to-source
說明:
NAT_Pro表示NAT的協議,可以是tcp或udp
NAT_Host表示中間做端口映射的主機。這里也就是主機A
NAT_Port表示中間做端口映射的端口。這里也就是主機A的8080口
Dst_Host表示被NAT的主機。這里也就是主機B
Dst_Host表示被NAT的端口。這里也就是主機B的80口
情形二:主機內部的端口重定向
我們有時需要把訪問主機的7979端口映射到8080端口。同時我們也可以直接使用iptables重定向來進行完成。
iptables -t nat -A PREROUTING -p tcp --dport 7979 -j REDIRECT --to-ports 8080
注意問題:
需要打開ip_forward功能:echo ’1’ > /proc/sys/net/ipv4/ip_forward
上述就是關于linux端口映射命令的一些案例方式,當我們在面對不同的情形下時,都可以使用iptables的命令來完成一些操作。在使用iptables的時候就會減少很多頭疼操作。想獲取更多的電腦操作方法及軟件的使用方法,敬請關注好吧啦網,我們將我們將竭盡為你解答。
相關文章: