一个内网端口通过linux映射到公网地址的问题。我这样做有错误吗?

Web、Mail、Ftp、DNS、Proxy、VPN、Samba、LDAP 等基础网络服务
回复
wangzc2009
帖子: 319
注册时间: 2009-01-30 18:18
来自: 湖北十堰

一个内网端口通过linux映射到公网地址的问题。我这样做有错误吗?

#1

帖子 wangzc2009 » 2009-04-04 21:00

一个内网端口通过linux映射到公网地址的问题。我这样有错误吗?

办公室有个局域网,都是私网地址。办公网内有个私网服务器,对办公网内人员服务。
我有台电脑装linux(Ubuntu8.10),双网卡。一个是办公网地址(eth1为192.168.1.88),另一个是公网地址(eth0为A.B.C.D)。公网地址别人都能访问到。这台电脑怎么做NAT转换。才能做到我回家后,就能通过公网直接访问办公网服务器提供的服务。

其中办公网服务器只通过6000,6001,6006提供服务。
由于软件是个专业软件。目前我做了后面的规则。但是那个软件还是显示连不上服务器。
数据制作如下:

sysctl net.ipv4.ip_forward=1
iptables -t nat -A PREROUTING -i eth0 -d A.B.C.D -p tcp --dport 6000 -j DNAT --to-destination 192.168.1.88:6000
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.1.88 -p tcp --dport 6000 -j SNAT --to A.B.C.D:6000
iptables -t nat -A PREROUTING -i eth0 -d A.B.C.D -p tcp --dport 6001 -j DNAT --to-destination 192.168.1.88:6001
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.1.88 -p tcp --dport 6001 -j SNAT --to A.B.C.D:6001
iptables -t nat -A PREROUTING -i eth0 -d A.B.C.D -p tcp --dport 6006 -j DNAT --to-destination 192.168.1.88:6006
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.1.88 -p tcp --dport 6006 -j SNAT --to A.B.C.D:6006
iptables -A FORWARD -o eth1 -d 192.168.1.88 -p tcp --dport 6000 -j ACCEPT
iptables -A FORWARD -i eth1 -s 192.168.1.88 -p tcp --sport 6000 -m state --state ESTABLISHED -j ACCEPT
iptables -A FORWARD -o eth1 -d 192.168.1.88 -p tcp --dport 6001 -j ACCEPT
iptables -A FORWARD -i eth1 -s 192.168.1.88 -p tcp --sport 6001 -m state --state ESTABLISHED -j ACCEPT
iptables -A FORWARD -o eth1 -d 192.168.1.88 -p tcp --dport 6006 -j ACCEPT
iptables -A FORWARD -i eth1 -s 192.168.1.88 -p tcp --sport 6006 -m state --state ESTABLISHED -j ACCEPT
iptables -A FORWARD -o eth0 -d A.B.C.D -p tcp --dport 6000 -j ACCEPT
iptables -A FORWARD -i eth0 -s A.B.C.D -p tcp --sport 6000 -m state --state ESTABLISHED -j ACCEPT
iptables -A FORWARD -o eth0 -d A.B.C.D -p tcp --dport 6001 -j ACCEPT
iptables -A FORWARD -i eth0 -s A.B.C.D -p tcp --sport 6001 -m state --state ESTABLISHED -j ACCEPT
iptables -A FORWARD -o eth0 -d A.B.C.D -p tcp --dport 6006 -j ACCEPT
iptables -A FORWARD -i eth0 -s A.B.C.D -p tcp --sport 6006 -m state --state ESTABLISHED -j ACCEPT
愿意同大家一起学习分享linux知识
回复