免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2458 | 回复: 5
打印 上一主题 下一主题

[网络管理] [求助]如何映射网关机器的内网网卡的端口 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-11-01 11:40 |只看该作者 |倒序浏览
一网关Redhat Linux9.0(外网地址a.b.c.d eth0,内网192.168.0.15 eth1),使用Iptables做映射,内网用户可以通过15网关上网,由于需要把网关内网运行的程序的端口映射出去,如把192.168.0.15上的端口7777映射到a.b.c.d的8888上,如何使用iptables呢?
我使用下面的命令但不能成功映射
iptables -t nat -A PREROUTING -d a.b.c.d -p tcp --dport 8888 -j DNAT --to 192.168.0.15:7777
我的iptables配置文件

[root@test sysconfig]# cat /etc/sysconfig/iptables
# Generated by iptables-save v1.2.7a on Fri Apr 23 17:36:30 2004
*filter
:INPUT ACCEPT [38727]
:FORWARD ACCEPT [15675]
:OUTPUT ACCEPT [24982]
COMMIT
# Completed on Fri Apr 23 17:36:30 2004
# Generated by iptables-save v1.2.7a on Fri Apr 23 17:36:30 2004
*nat
REROUTING ACCEPT [5737]
OSTROUTING ACCEPT [4628]
:OUTPUT ACCEPT [23]
#-A POSTROUTING -s 192.168.0.156 -o eth0 -j SNAT --to-source a.b.c.d

##
##
COMMIT

论坛徽章:
0
2 [报告]
发表于 2004-11-01 13:50 |只看该作者

[求助]如何映射网关机器的内网网卡的端口

使用了Dnat也不行
iptables -t nat -A PREROUTING -p tcp -i eth0 -d a.b.c.d --dport 8888 -j DNAT --to 192.168.0.15:7777

论坛徽章:
0
3 [报告]
发表于 2004-11-01 14:15 |只看该作者

[求助]如何映射网关机器的内网网卡的端口

地址映射呀。我去找找资料。 ==


===========================================
# ftp dnat
#/sbin/iptables -t nat -A PREROUTING -p tcp -d $addr0 --dport 20 -i eth0 -j DNAT --to $addr3:20
#/sbin/iptables -t nat -A PREROUTING -p tcp -d $addr0 --dport 21 -i eth0 -j DNAT --to $addr3:21
这是我做过的一个例子。用过的好用。看看是不是对你有帮助吧。
$addr0本机的外部网卡IP
$addr1内部服务器的IP
===========================================

还要注意把你的网关上的7777给打开。

论坛徽章:
0
4 [报告]
发表于 2004-11-01 16:42 |只看该作者

[求助]如何映射网关机器的内网网卡的端口

原帖由 "78020281" 发表:
===========================================
# ftp dnat
#/sbin/iptables -t nat -A PREROUTING -p tcp -d $addr0 --dport 20 -i eth0 -j DNAT --to $addr3:20
#/sbin/ip..........


非常感谢,不过还是不行,另外你的命令也和使用的差不多

论坛徽章:
0
5 [报告]
发表于 2004-11-01 17:32 |只看该作者

[求助]如何映射网关机器的内网网卡的端口

将端口映射到内网中的某台机器上,试试下面的规则,不知道你要的是不是这个
iptables -t nat -F
iptables -t nat -A PREROUTING -i eth0 -d a.b.c.d -p tcp --dport 8888 -j DNAT --to 192.168.0.156:7777
iptables -t nat -A PREROUTING -i eth1 -s 192.168.0.0/24 -j SNAT --to a.b.c.d
iptables -F FORWARD
iptables -A FORWARD accept

如果仅仅是将外网口地址的某个端口映射到内网口的某个端口上,好像没有多大意义。因为都是同一台主机的地址,而服务器程序如apache,vsftd在运行时,是不会对client的地址进行限制的。不管你是从内网口过来的请求还是从外网口过来的请求,它都会进行处理。squid在做透明代理的时候经常要将80端口的请求重定向到3128端口上,这个用REDIRECT就可以了。
iptables -t nat -A POSTROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128
将内网中出去的http请求重定向到3128端口。

论坛徽章:
0
6 [报告]
发表于 2004-11-02 09:33 |只看该作者

[求助]如何映射网关机器的内网网卡的端口

原帖由 "kunlunsnow" 发表:
................
如果仅仅是将外网口地址的某个端口映射到内网口的某个端口上,好像没有多大意义。因为都是同一台主机的地址,而服务器程序如apache,vsftd在运行时,是不会对client的地址进行限制的。不管你是从内网口过来的请求还是从外网口过来的请求,它都会进行处理。squid在做透明代理的时候经常要将80端口的请求重定向到3128端口上,这个用REDIRECT就可以了。
iptables -t nat -A POSTROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128
将内网中出去的http请求重定向到3128端口。

非常感谢楼上的kunlunsnow大大回复,由于在内网运行程序是运行在内网的某个端口,由于有某种限制,内网的不能直接访问外网的端口,所以需要在内网启动程序,但有时需要在外网访问内网的这个程序,所以需要把内网的端口映射出去
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP