1. 程式人生 > >linux上埠對映的詳細步驟

linux上埠對映的詳細步驟

在網上搜索好多,對linux配置埠對映都不夠詳細,我在RedHat8.0上用iptables配置了埠對映,講述詳細的配置過程,供大家參考。
【實現功能】
  PC A是
  eth0      172.18.10.212  內網
  eth1      219.239.xx.xx  外網

  PC B是    172.18.10.205  內網

  A的8080埠對映到B的80埠

【步驟】
1、 首先應該做的是/etc/sysctl.conf配置檔案的  net.ipv4.ip_forward = 1 預設是0
    這樣允許iptalbes FORWARD。
2、 在/etc/rc.d/init.d目錄下有iptables 檔案,使用格式如下
    Usage: ./iptables {start|stop|restart|condrestart|status|panic|save}
    相當與service iptables {....}
    把iptables 服務停止,清除以前的規則,存檔
    到/etc/rc.d/init.d目錄下,執行
   
    ./iptables stop
    iptalbes -F
    iptalbes -X
    iptalbes -Z
    ./iptables save
3、 重新配置規則
iptables -t nat -A PREROUTING -d 219.239.xx.xx -p tcp --dport 8080 -j DNAT --to-destination 172.18.10.205:80
iptables -t nat -A POSTROUTING -d 172.18.10.205 -p tcp --dport 80 -j SNAT --to 172.18.10.212
iptables -A FORWARD -o eth0 -d 172.18.10.205 -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -i eth0 -s 172.18.10.205 -p tcp --sport 80 -j ACCEPT
DNAT SNAT 的請參考幫助,這裡不再陳述。
4、 新的規則存檔
    ./iptables save
    規則存檔後在/etc/sysconfig/iptables這個檔案裡面,若你對這個檔案很熟悉
    直接修改這裡的內容也等於命令列方式輸入規則。
5、 啟動iptables 服務
    ./iptables start
    在/proc/net/ip_conntrack檔案裡有包的流向,如下面
   tcp      6 53 TIME_WAIT src=221.122.59.2 dst=219.239.xx.xx sport=7958 dport=8080 packets=9 bytes=1753 
            src=172.18.10.205 dst=172.18.10.212 sport=80 dport=7958 packets=9 bytes=5777 [ASSURED] use=1