由 he21cn 在 07-01-2004 15:17 发表:
请教个问题(关于ipables端口映射的)
各位大哥 ,请教个问题
现在我用双网卡linux做的 网关 ,一块网卡eth0绑定了外网ip: a.b.c.d,另一块网卡eth1绑定了内网ip:192.168.0.254 ,我要通过内网提供web服务,而我的80端口已经被占用,想请教一下 怎么用iptables 做端口映射跳转 提供web服务的ip假设为
192.168.0.1,现在想 192.168.0.1:80→192.168.0.254:8080这样的转换,最终的效果是要 访问a.b.c.d:8080→192.168.0.1:80,想请教iptables该怎么写
由 he21cn 在 07-01-2004 15:18 发表:
就知道这么点,继续怎么写啊
入站包 →DNAT→路由 →本地,
iptables -t nat -A PREROUTING -p tcp -d a.b.c.d:8080 -j DNAT --to 192.168.0.1
我想了解的问题的关键在于 本地→OUTPUT→SNAT→出站包 这一个过程
我已经试过了 iptables -t nat -A POSTROUTING -p tcp -d 192.168.0.1 -j SNAT --to 192.168.0.254:8080 , 但这样是没用的,这里是不是可以 用 REDIRECT 这命令 跳转一下 80 和8080,具体怎么写 我不是很清楚
由 shell 在 07-01-2004 15:28 发表:
向程序版的兄弟致敬 !
由 Snoopy 在 07-01-2004 15:29 发表:
必需使用REDIRECT,久没用iptables,格式忘记了
一句iptables就搞定,将0.254的8080重定向到80
And then in the evening light, when the bars of freedom fall
I watch the two of you in the shadows on the wall
How in the darkness steals some of the choices from my hand
Then will I begin to under
由 faint 在 07-01-2004 15:44 发表:
这个是经典的iptables应用的例子了。随便找下都可以找到。
LINUX下端口转发FAQ
Q:一局域网192.168.1.0/24,有web和ftp服务器192.168.1.10、192.168.1.11,网关linux,内网eth0,IP为192.168.1.1,外网eth1,IP为a.b.c.d,怎样作NAT能使内外网都能访问公司的服务器?
A:# web
用DNAT作端口映射
iptables -t nat -A PREROUTING -d a.b.c.d -p tcp --dport 80 -j DNAT --to 192.168.1.10
用SNAT作源地址转换(关键),以使回应包能正确返回
iptables -t nat -A POSTROUTING -d 192.168.1.10 -p tcp --dport 80 -j SNAT --to 192.168.1.1
一些人经常忘了打开FORWARD链的相关端口,特此增加
iptables -A FORWARD -o eth0 -d 192.168.1.10 -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -i eth0 -s 192.168.1.10 -p tcp --sport 80 -m --state ESTABLISHED -j ACCEPT
你看看吧。
由 Snoopy 在 07-01-2004 15:46 发表:
faint你这样的例子他不能用的
And then in the evening light, wh