免费注册 查看新帖 |

Chinaunix

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

关于linux三线服务器端口映射的问题!!!!!!! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-05-16 17:52 |只看该作者 |倒序浏览
本帖最后由 hyfb1000 于 2013-05-16 18:00 编辑

1、公司有一台三线服务器A,分别用电信、联通、移动线路,三线服务器A的网关默认使用移动线路。
操作系统CentOS 6.0
Linux网卡配置:
em1   ip=192.168.8.12 内网IP
em2   ip=移动IP
em2:0  ip=电信IP
em2:1  ip=网通IP

默认网关设置在 /etc/sysconfig/network
GATEWAY=移动网关IP


2、该三线服务器已经做了策略路由(步骤如下)
/etc/iproute2/rt_tables添加
200  CTC
201  CNC

ip route add 电信网段/26 dev em2 table CTC
ip route add default电信网关 table CTC
ip route add 联通网段IP/28 dev em2 table CNC
ip route add default via 联通网关 table CNC
ip rule add from 电信IP table CTC
ip rule add from 联通IP table CNC

3、这样操作后三线服务器的三个公网IP都能正常访问,也可以交叉访问。再配合智能DNS解析,现在已经实现电信进来的访问从电信线路出去,联通进来的访问从联通线路出去,其他线路进来的访问从移动线路出去,没有任何问题,一直使用正常。

--------------------------------------------------------------------
下面问题来了!

由于业务需求,公司把这台三线服务器A作为一台NAT代理服务器,内网有一台服务器B(192.168.8.30),网关指向三线服务器A,目前内网服务器B已经能上网,并且在三线服务器上做了端口映射22030。现在用移动IP+22030端口可以正常访问内网服务器B,但是电信IP和联通IP加端口就不通。

请问:现在如何通过电信IP和联通IP访问到内网服务器B?



备注:上网找了一些教程,按照下面的步骤做了一下,发现电信和联通的IP访问内网服务器正常了,但移动IP又不通了,甚至用移动的IP都连接不了三线服务器A了!不知道问题出在哪!
1、进来的数据打标记
iptables -t mangle -A PREROUTING -i em2 -m conntrack  --ctstate NEW  -j CONNMARK --set-mark 0x100
iptables -t mangle -A PREROUTING -i em2 -m conntrack  --ctstate NEW  -j CONNMARK --set-mark 0x200

2、出去的数据打标记
iptables -t mangle -A POSTROUTING -o em2 -m conntrack  --ctstate NEW  -j CONNMARK --set-mark 0x100
iptables -t mangle -A POSTROUTING -o em2 -m conntrack  --ctstate NEW  -j CONNMARK --set-mark 0x200

3、转发到内网的数据包从链接跟踪记录还原标记到数据包中的mark字段
iptables -t mangle -A PREROUTING -i em1 -m conntrack --ctstate ESTABLISHED,RELATED -j CONNMARK --restore-mark

4、本地出去的数据包从链接跟踪记录还原标记到数据包中的mark字段
iptables -t mangle -A OUTPUT -m conntrack --ctstate ESTABLISHED,RELATED -j CONNMARK --restore-mark

5、标识为100的数据包走电信网关,标识为200的数据包走联通网关
ip rule add fwmark 0x100 table CTC
ip rule add fwmark 0x200 table CNC

6、端口映射和NAT
iptables -t nat -A PREROUTING -p tcp –dport 22030 -j DNAT –to 192.168.8.30:22030
iptables -t nat -I POSTROUTING -s 192.168.8.0/24 -o em2 -j SNAT --to-source 移动IP
iptables -t nat -I POSTROUTING -s 192.168.8.0/24 -o em2 -j SNAT --to-source 电信IP
iptables -t nat -I POSTROUTING -s 192.168.8.0/24 -o em2 -j SNAT --to-source 网通IP


请各位大侠帮忙解答一下,谢谢!

论坛徽章:
16
IT运维版块每日发帖之星
日期:2015-10-02 06:20:00IT运维版块每月发帖之星
日期:2015-09-11 19:30:52IT运维版块每周发帖之星
日期:2015-09-11 19:20:31IT运维版块每日发帖之星
日期:2015-08-26 06:20:00每日论坛发贴之星
日期:2015-08-20 06:20:00IT运维版块每日发帖之星
日期:2015-08-20 06:20:002015年辞旧岁徽章
日期:2015-03-03 16:54:15金牛座
日期:2014-05-04 16:58:09双子座
日期:2013-12-17 16:44:37辰龙
日期:2013-11-22 15:20:59狮子座
日期:2013-11-18 22:55:08射手座
日期:2013-11-12 10:54:26
2 [报告]
发表于 2013-05-16 22:09 |只看该作者
tcpdump 抓包看看吧,对比一下。

论坛徽章:
0
3 [报告]
发表于 2013-05-17 13:41 |只看该作者
哪位大侠了解这方面的技术 麻烦给个建议,谢谢!

论坛徽章:
0
4 [报告]
发表于 2013-05-17 17:43 |只看该作者
我想你 可以 尝试一下,下面两种 办法:
方案一:
6、端口映射和NAT
iptables -t nat -A PREROUTING -p tcp –dport 22030 -j DNAT –to 192.168.8.30:22030
iptables -t nat -A POSTROUTING -s 移动IP -dport 22030 -j SNAT --to-source 192.168.8.12
iptables -t nat -A POSTROUTING -s 电信IP -dport 22030 -j SNAT --to-source 192.168.8.12
iptables -t nat -A POSTROUTING -s 网通IP -dport 22030 -j SNAT --to-source 192.168.8.12

方案二:
我没有试过哈,,你测试一哈这样子行不?
你把 em1 的IP 地址  再加 2个 em1 共 3 个 IP

6、端口映射和NAT
iptables -t nat -A PREROUTING -p tcp –dport 22030 -j DNAT –to 192.168.8.30:22030
iptables -t nat -A POSTROUTING -s 移动IP -dport 22030 -j SNAT --to-source em1.ip1
iptables -t nat -A POSTROUTING -s 电信IP -dport 22030 -j SNAT --to-source em1.ip2
iptables -t nat -A POSTROUTING -s 网通IP -dport 22030 -j SNAT --to-source em1.ip3

论坛徽章:
0
5 [报告]
发表于 2013-05-17 19:16 |只看该作者
回复 4# darnis

非常感谢,不过用你的方法试了一下,还是没有通,不知道问题出在哪!

   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP