论坛风格切换切换到宽版
  • 997阅读
  • 7回复

[问题求助]外部访问内网提供WEB服务的问题(电信网通双线) [复制链接]

上一主题 下一主题
离线aeleven.
 
发帖
2203
C币
-262342
威望
435
贡献值
1
银元
-1
铜钱
5068
人人网人气币
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2009-05-01
外部访问内网提供WEB服务的问题(.电信网通双线)--- 印刷
#添加网通路由  
ip route a.dd $CNC_NET d.ev $CNC_IF src $CNC_IP table $CNC_T外贸
  ip route add default via $CNC_..GW table $CNC_T.
  #添加电信路由
  ip route add $CTC_NET dev $CTC_IF s.rc $CTC_IP. table $CTC_T.
  ip route add defaul.t via $CTC_GW table $CT.C_T            杀毒
  
  ip. route replace $C.NC_NET dev $CNC_IF src $CNC_IP电脑
. ip. route replace $CTC_NET dev $CTC_IF src $CTC_IP.
  #替换默认路由为电信
  ip route r.eplace .default via $CTC_GW电脑

  ip rule. add from .$CNC_IP table $CNC_T<性病>
. ip rule add from $.CTC_IP table $CTC_T           鲜花
  #添加网通策略路由
  ip rule add to $LIN.E. table $CNC_T服务器

  ip route flush c.ache.

这样设置后,内.网访问电信、.网通按照各自的线路选择出口正常             汽车
但是外网用户访问经SNAT到内网.提供.的WEB服务器时,路由不正常           女人
具体表现为: 外部电信用户访问该服务器电..信线路正常,访问网通线路不正常.
             外部网通用户访问该服务器电信线路.不正常.,访问网通线路正常.
大家分析下是哪里的问题呢,以上设置是参照plati.num班主发表的双线策略路由.设置的,    健康
好着急哦:(

评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
发帖
1955
C币
-235598
威望
340
贡献值
1
银元
-4
铜钱
4341
人人网人气币
0
只看该作者 沙发  发表于: 2010-04-13
http://bbs.chinaunix.net/viewthr ... &extra=page%3D1

离线hadv2008.
发帖
1899
C币
-199431
威望
353
贡献值
1
银元
-2
铜钱
4346
人人网人气币
0
只看该作者 板凳  发表于: 2010-04-13
谢谢platinum 版主,我看了
似乎只有这里有点区别
一个是 ip route add 网通地址 via 网通网关
一个是 ip rule add to 网通地址 table 网通表
两这有什么区别吗

离线wwwfu80com.
发帖
1976
C币
-235639
威望
352
贡献值
1
银元
0
铜钱
4319
人人网人气币
0
只看该作者 地板  发表于: 2010-04-13


QUOTE:原帖由 snakebaby 于 2006-10-25 17:14 发表
谢谢platinum 版主,我看了
似乎只有这里有点区别
一个是 ip route add 网通地址 via 网通网关
一个是 ip rule add to 网通地址 table 网通表
两这有什么区别吗

google
keyword: ip命令手册

离线kekehsu.
发帖
2147
C币
-193213
威望
407
贡献值
1
银元
-3
铜钱
4694
人人网人气币
0
只看该作者 4楼 发表于: 2010-04-13
LZ,,偶的情况跟你的一样呢,前段时间发的求助贴。。http://bbs.chinaunix.net/viewthr ... &extra=page%3D8   始终没办法解决,有人说是发行版的问题。。

现在我用智能DNS双线解析,,不同的客户解析到相应的IP,凑和着用吧..

离线bakkey.
发帖
2046
C币
-235861
威望
424
贡献值
1
银元
-6
铜钱
4679
人人网人气币
0
只看该作者 5楼 发表于: 2010-04-13
终于解决这个问题了,现将实现思路公布下,不足之处请大家补充:)
起因: 当外部电信用户访问该服务器网通地址时 
电信用户--网通服务器:80--DNAT-内网服务器:80--返回--查询路由规则--属于电信IP--走电信路由
结果 外部电信用户收不到起初经过服务器的网通网卡返回的包,故不能正常建立连接
反之 网通用户访问 改服务器电信IP时出现同样的问题

方案 在不影响内网其他用户经过网关策略路由选择线路的同时,单独针对内网提供WEB服务的IP进行单独策略路由

我做了如下设置:
 1 在内网提供服务的主机绑定两个IP
 2 在网关上将来自该主机其中一个IP下一跳路由查询电信路由 另外一个IP查询网通路由
 3 将公网的电信\网通80端口分别DNAT到该主机的一个IP上
刷新路由
以上完成了策略路由互访带来的问题,以上思路请大家参考分析下,有什么不对的地方请多多指正:)

离线xunleifilm.
发帖
2062
C币
-152450
威望
382
贡献值
1
银元
-1
铜钱
4740
人人网人气币
0
只看该作者 6楼 发表于: 2010-04-13


QUOTE:原帖由 snakebaby 于 2006-10-31 06:46 发表
我做了如下设置:
 1 在内网提供服务的主机绑定两个IP
 2 在网关上将来自该主机其中一个IP下一跳路由查询电信路由 另外一个IP查询网通路由
 3 将公网的电信\网通80端口分别DNAT到该主机的一个IP上
刷新路由
以上完成了策略路由互访带来的问题,以上思路请大家参考分析下,有什么不对的地方请多多指正:)

最好把你的具体实现写出来,那样才好弄懂你的描述,然后针对可能不对的地方给你指正

离线潋滟.
发帖
2175
C币
-262430
威望
417
贡献值
1
银元
-1
铜钱
4968
人人网人气币
0
只看该作者 7楼 发表于: 2010-04-13
好的,具体步骤如下:
网络环境: eth0 网通 ; eth1 电信 ; eth2 内网192.168.1.250 ; eth3 内网 192.168.3.250
内网WEB服务器为两个IP:  eth0:192.168.1.240  gw:192.168.1.250
                                      eth1:192.168.3.240  gw:192.168.3.250
实现目标: 内网两个IP段均能通过各自的网关实现识别电信\网通出口,达到合理利用线路资源
         外部用户均能通过电信\网通IP访问内网提供的web服务
首先在/etc/iproute/rt_tables里面加入以下内容
10    CNCS
20    CNC
30    CTC
第2步 加入以下路由规则
# CNC
CNC_IF="eth0"
CNC_IP="61.181.100.102"
CNC_GW="61.181.100.101"
CNC_NET="61.181.100.100/30"
CNC_T="CNC"
CNCS_T="CNCS"
# CTC
CTC_IF="eth1"
CTC_IP="221.239.200.202"
CTC_GW="221.239.200.201"
CTC_NET="221.239.200.200/30"
CTC_T="CTC"
# LAN
INT1_IF="eth2"
INI2_IF="eth3"
INT1_IP="192.168.1.250"
INT2_IP="192.168.3.250"
INT1_NET="192.168.1.0/24"
INI2_NET="192.168.3.0/24"
LAN_IP="192.168.0.0/16"
# WEB
FWD_TCP_PORT1="80"
# LAN SERVER IP
SERVER_IPCNC1="192.168.1.240"
SERVER_IPCTC1="192.168.3.240"

   ip route add $CNC_NET dev $CNC_IF src $CNC_IP table $CNCS_T
   ip route add default via $CNC_GW table $CNC_T

  ip route add $CNC_NET dev $CNC_IF src $CNC_IP table $CNC_T
   ip route add default via $CNC_GW table $CNC_T

  ip route add $CTC_NET dev $CTC_IF src $CTC_IP table $CTC_T
  ip route add default via $CTC_GW table $CTC_T
  
  ip route replace $CNC_NET dev $CNC_IF src $CNC_IP
  ip route replace $CTC_NET dev $CTC_IF src $CTC_IP
  ip route replace $INT1_NET dev $INT1_IF src $INT1_IP
  ip route replace $INT2_NET dev $INT2_IF src $INT2_IP
  ip route replace $INT1_NET dev $INT1_IF src $INT1_IP table $CNCS_T
  ip route replace $INT2_NET dev $INT2_IF src $INT2_IP table $CNCS_T
  ip route replace $INT1_NET dev $INT1_IF src $INT1_IP table $CNC_T
  ip route replace $INT2_NET dev $INT2_IF src $INT2_IP table $CNC_T
  ip route replace $INT1_NET dev $INT1_IF src $INT1_IP table $CTC_T
  ip route replace $INT2_NET dev $INT2_IF src $INT2_IP table $CTC_T
  ip route replace default via $CTC_GW

  ip rule add from $CNC_IP table $CNC_T
  ip rule add from $CTC_IP table $CTC_T
  #注意这里
  ip rule add from 192.168.1.240/32 table $CNCS_T
  ip rule add from 192.168.3.240/32 table $CTC_T
  #添加网通策略路由
  ip rule add to $网通IP段 table $CNC_T

  ip route flush cache

for PORT in $FWD_TCP_PORT1; do
iptables -A FORWARD -i $CNC_IF -o $INT1_IF -d $SERVER_IPCNC1 -p tcp --dport $PORT -m state --state NEW -j ACCEPT
iptables -A FORWARD -i $CTC_IF -o $INT2_IF -d $SERVER_IPCTC1 -p tcp --dport $PORT -m state --state NEW -j ACCEPT
iptables -t nat -A PREROUTING -d $CNC_IP -p tcp --dport $PORT -j DNAT --to $SERVER_IPCNC1
iptables -t nat -A PREROUTING -d $CTC_IP -p tcp --dport $PORT -j DNAT --to $SERVER_IPCTC1
iptables -t nat -A POSTROUTING -s $LAN_IP -d $SERVER_IPCNC1 -p tcp --dport $PORT -j SNAT --to-source $INT1_IP
iptables -t nat -A POSTROUTING -s $LAN_IP -d $SERVER_IPCTC1 -p tcp --dport $PORT -j SNAT --to-source $INT2_IP
done

iptables -t nat -A POSTROUTING -o $CNC_IF -s $LAN_IP -j SNAT --to-source $CNC_IP
iptables -t nat -A POSTROUTING -o $CTC_IF -s $LAN_IP -j SNAT --to-source $CTC_IP
不足之处,白金给看看 :)

[ 本帖最后由 snakebaby 于 2006-10-31 16:46 编辑 ]
快速回复
限100 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
上一个 下一个