免费注册 查看新帖 |

Chinaunix

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

【求助】ospf做负载均衡的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-09-04 17:21 |只看该作者 |倒序浏览

拓扑如图,
本来标准做法是两台C6509和两台C7609全互连,互连接口地址掩码30位,都放入OSPF骨干域里,这样通过外接的C3745访问C6509下挂的地址/网段时就可以使C3745与两台C7609间的两条链路同时跑流量。
但是现在甲方要求C7609和C6509之间必须加防火墙和IPS,而现在FW只有三个接口,IPS也只有了两个接口,所以在咨询过几个集成商技术支持后,两台C7609上各一个口和一台C6509上一个口划在同一网段,防火墙和IPS透明,并开放相应策略。附图中接口1,3,5为一个网段,2,4,6另一个网段,7,8单独一个网段。
本来这样做说是也可以起到负载均衡的作用,但是我按照这个方式配置完成后,在右边那台C6509-2上show ip route,看到只与左边一台C7609-1单独互联的一些网段的下一跳地址只指向了右边一台C7609-2上与这台C6509-2的接口,也就是说从C6509-2上访问C7609-1直连的一个网段时,接口6往目的地址的下一跳指向了接口4,而非接口2,再从接口8到接口7,最终到达目的地。而OSPF的路径算法应该会考虑链路状态和COST值,照理说应该这个下一跳应该直接指向C7609-1的接口。否则就无法实现负载均衡。
不知道各位高手有什么解决方法吗?或者这样的方式干脆就是错的?互联接口地址必须30位?
........................

回复: 【求助】ospf做负载均衡的问题
呵呵,好玩.可以把在6509-1上的SHOW IP OSPF DATABASE 贴出来吗?
然后请告知接口1,和3的IP 地址是什么? 还有C7609-2单独互联的一些网段地址是什么?
如果是COST的问题,就+ 7口COST来逼它用3口做下一跳
...............................................
改COST值的话,也不应该啊,再说了,我是要实现自动的负载均衡,如果手动改COST就增加了网络的复杂性.
上IP OSPF DATABASE了 !
谢谢!
引用:
C6509-2#sh ip ospf database
OSPF Router with ID (172.16.200.143) (Process ID 200)
Router Link States (Area 0)
Link ID ADV Router Age Seq# Checksum Link count
172.16.200.141 172.16.200.141 1137 0x80001100 0x005E6F 3 \\C7609-2
172.16.200.143 172.16.200.143 1180 0x8000006A 0x009BFD 2 \\C6509-2
172.16.200.152 172.16.200.152 1866 0x80000069 0x00DEA2 2 \\C7609-1
Net Link States (Area 0)
Link ID ADV Router Age Seq# Checksum
172.31.1.33 172.16.200.141 131 0x8000005C 0x00DBC6 \\与C6509-2互联的C7609-2端口地址
172.31.1.66 172.16.200.152 1116 0x80000057 0x00A3E8 \\与C7609-2互联的C7609-1端口地址
Type-5 AS External Link States
Link ID ADV Router Age Seq# Checksum Tag
172.16.200.143 172.16.200.141 638 0x8000005A 0x00120D 0
172.16.200.152 172.16.200.152 1117 0x8000005B 0x007396 0
172.16.205.0 172.16.200.152 1117 0x8000005B 0x00326B 0 \\C7609-1上直连的目的网段
172.16.248.0 172.16.200.143 1181 0x80000060 0x0083F2 0
172.16.249.0 172.16.200.143 1181 0x80000060 0x0078FC 0
172.16.249.0 172.16.200.152 1117 0x8000005B 0x004C25 0
172.31.1.8 172.16.200.141 639 0x80000060 0x000858 0
172.31.1.16 172.16.200.141 393 0x80000060 0x0091D6 0
172.31.1.16 172.16.200.143 919 0x80000057 0x0089E6 0
172.31.1.16 172.16.200.152 1117 0x8000005B 0x0097B6 0
172.31.1.20 172.16.200.152 1117 0x8000005B 0x006FDA 0
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
CR7609-1#sh ip ospf database
OSPF Router with ID (172.16.200.152) (Process ID 200)
Router Link States (Area 0)
Link ID ADV Router Age Seq# Checksum Link count
172.16.200.141 172.16.200.141 716 0x80001100 0x005E6F 3
172.16.200.143 172.16.200.143 760 0x8000006A 0x009BFD 2
172.16.200.152 172.16.200.152 1444 0x80000069 0x00DEA2 2
Net Link States (Area 0)
Link ID ADV Router Age Seq# Checksum
172.31.1.33 172.16.200.141 1692 0x8000005B 0x00DDC5
172.31.1.66 172.16.200.152 694 0x80000057 0x00A3E8
Type-5 AS External Link States
Link ID ADV Router Age Seq# Checksum Tag
172.16.200.143 172.16.200.141 217 0x8000005A 0x00120D 0
172.16.200.152 172.16.200.152 695 0x8000005B 0x007396 0
172.16.205.0 172.16.200.152 695 0x8000005B 0x00326B 0
172.16.248.0 172.16.200.143 761 0x80000060 0x0083F2 0
172.16.249.0 172.16.200.143 761 0x80000060 0x0078FC 0
172.16.249.0 172.16.200.152 695 0x8000005B 0x004C25 0
172.31.1.8 172.16.200.141 218 0x80000060 0x000858 0
172.31.1.16 172.16.200.141 1949 0x8000005F 0x0093D5 0
172.31.1.16 172.16.200.143 499 0x80000057 0x0089E6 0
172.31.1.16 172.16.200.152 695 0x8000005B 0x0097B6 0
172.31.1.20 172.16.200.152 695 0x8000005B 0x006FDA 0
172.31.253.0 172.16.200.141 218 0x8000005A 0x00AFBA 0
172.31.253.0 172.16.200.143 761 0x80000060 0x0097CA 0
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
C7609-2#sh ip ospf database
OSPF Router with ID (172.16.200.141) (Process ID 200)
Router Link States (Area 0)
Link ID ADV Router Age Seq# Checksum Link count
172.16.200.141 172.16.200.141 660 0x80001100 0x005E6F 3
172.16.200.143 172.16.200.143 705 0x8000006A 0x009BFD 2
172.16.200.152 172.16.200.152 1389 0x80000069 0x00DEA2 2
Net Link States (Area 0)
Link ID ADV Router Age Seq# Checksum
172.31.1.33 172.16.200.141 1636 0x8000005B 0x00DDC5
172.31.1.66 172.16.200.152 640 0x80000057 0x00A3E8
Type-5 AS External Link States
Link ID ADV Router Age Seq# Checksum Tag
172.16.200.143 172.16.200.141 161 0x8000005A 0x00120D 0
172.16.200.152 172.16.200.152 641 0x8000005B 0x007396 0
172.16.205.0 172.16.200.152 641 0x8000005B 0x00326B 0
172.16.248.0 172.16.200.143 706 0x80000060 0x0083F2 0
172.16.249.0 172.16.200.143 706 0x80000060 0x0078FC 0
172.16.249.0 172.16.200.152 641 0x8000005B 0x004C25 0
172.31.1.8 172.16.200.141 162 0x80000060 0x000858 0
172.31.1.16 172.16.200.141 1893 0x8000005F 0x0093D5 0
172.31.1.16 172.16.200.143 444 0x80000057 0x0089E6 0
172.31.1.16 172.16.200.152 641 0x8000005B 0x0097B6 0
172.31.1.20 172.16.200.152 641 0x8000005B 0x006FDA 0
172.31.253.0 172.16.200.141 162 0x8000005A 0x00AFBA 0
172.31.253.0 172.16.200.143 706 0x80000060 0x0097CA 0
................................................
回复: 【求助】ospf做负载均衡的问题
引用:
作者: captain-zhou


改COST值的话,也不应该啊,再说了,我是要实现自动的负载均衡,如果手动改COST就增加了网络的复杂性.
等会儿上IP OSPF DATABASE !
谢谢!
自动的负载均衡 就是根据COST要相等,你现在的COST不等,怎么做自动的负载均衡?
我猜现在COST(1->2->7->8) 要小于COST(1->3),所以他才用2做下一跳,瞎猜的,没看"SHOW IP OSPF DATABASE"



   
...............................................
我这儿的负载均衡,只是要求从路由器3745后面连的网段过来,访问到两台C6509上任意的服务器或者vlan,这样的通路有两条,经过的路径刚好形成上下颠倒的两个三角形,上三角的两个边是等cost的,下三角的两个边也等cost,所以正常情况下,应该是可以实现负载均衡。
目前的情况是我任意一个连在7609上的网段,到连在6509上的目的网段的下一跳都不是最优,那根本不能实现负载均衡。郁闷!
....................................................
问题没看懂呀,可以说的清楚吗?请问你的用户是在3745吗?他想去一个联在6509-2的网络是吗?如果是,那么这个网络地址(x.x.x.x)是什么,可以在3745上做“show ip route X.X.X.X"吗?别说什么3角型,把路径说出来,里面那有3角型,你能说一下到底3角型3条边是什么吗?
在6509-2上做show ip ospf border-router
....................................
其实问题有点串了!我想实现的目的是从3745下面的网段访问6509下的网段,在这个段实现负载均衡。
但是我主题里的问题是在7609-1上的单链路互联的某网段(也可以看成3745上只有一条线联到左边的7609-1),从6509-2下访问时,没有走的我认为的最优路由(即从6509-2下联某PC上经6509-2直接到7609-1,再到3745),而是从6509-2到了7609-2再到7609-1,最后到3745,多走了一跳,cost肯定不是最小。为什么会这样选路?
....................................................
引用:
作者: captain-zhou


其实问题有点串了!我想实现的目的是从3745下面的网段访问6509下的网段,在这个段实现负载均衡。
但是我主题里的问题是在7609-1上的单链路互联的某网段(也可以看成3745上只有一条线联到左边的7609-1),从6509-2下访问时,没有走的我认为的最优路由(即从6509-2下联某PC上经6509-2直接到7609-1,再到3745),而是从6509-2到了7609-2再到7609-1,最后到3745,多走了一跳,cost肯定不是最小。为什么会这样选路?
恩,看懂了,原来是为什么不走最优路由的问题,从你给的"SHOW IP OSPF DATABASE" 和图上看应该是没有问题的.
我们就具体看看你给出的网落172.16.205.0:
这个网络是由172.16.200.152通过LSA5通告进来的,所以172.16.200.152(7609-1)应该是ASBR,从6509-2到7609-1 (ASBR)有2个路由,为什么走了COST大的那条是有点奇怪.
可以在6509-2上"SHOW IP ROUTE OSPF " 和'SHOW IP OSPF BORDER"
在7609-2上SHOW IP ROUTE OSPF " 和'SHOW IP OSPF BORDER吗?
还有个问题就是你在7609-1上为什么只通告了2个接口,在7609-2上却通告了3个接口,是不是少通告去3745的接口,不过应该和本题无关
.......................................................
今天又和cisco的SE聊了聊,他认为我主题中提出的问题,正常情况下来说不应该会出现,有可能是防火墙阻隔了76-1和65之间的OSPF的LSA报文。但是我从65上能看到某3745下联的网段的两个路径,分别指向了不同的76,这个时候似乎防火墙也没能阻隔OSPF的LSA分组啊。悬疑。。。
另外根据Cisco的说法,用上图中的方法来实现整体网络达到负载均衡的效果,是确实可以的。但是从c3745到c6509上的数据流量并不是按照我最初的想法---基本等分---来走的,而是按照不同的线路本身的数据负载量,以及其他一些参考值,(类似OSPF自身的一种弱QoS功能)来不均衡的分配流量,甚至可能两条链路上流量值相差很大。但是同样能保证做到链路备份(毫无疑问),而且可以起到链路扩容的作用,即当一条两路满负载后,剩余的数据量会自动走另外一条链路。其实也完全能实现我的要求。
这部分内容没有看到哪本书有讲过,唉,看来还是很多东西不知道啊。继续寻找答案中。。。
..........................................
你说隔了76-1和65之间的OSPF的LSA报文,不可能的,你在6509-2上'SHOW IP OSPF DATA"Type-5 AS External Link States
Link ID ADV Router Age Seq# Checksum Tag
172.16.200.143 172.16.200.141 638 0x8000005A 0x00120D 0
172.16.200.152 172.16.200.152 1117 0x8000005B 0x007396 0
172.16.205.0 172.16.200.152 1117 0x8000005B 0x00326B 0 \\C7609-1上直连的目的网段
完全看的到7609-1的LSA5的.如果是根据COST选路的,他应该要选去ASBR最少的,也就是直接到7609-1 才对呀.


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/39746/showart_374170.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP