免费注册 查看新帖 |

Chinaunix

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

如何让数据走指定 的ip [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-02-25 15:48 |只看该作者 |倒序浏览
各位高手老大帮个忙

我现在有个双机环境 2个网卡邦定 作双机
bond0     Link encap:Ethernet  HWaddr 00:14:5E:1C:3B:8F  
          inet addr:10.144.40.1  Bcast:10.144.40.0  Mask:255.255.255.0
          UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
          RX packets:163947782 errors:0 dropped:0 overruns:0 frame:0
          TX packets:254212404 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1316003463 (1255.0 Mb)  TX bytes:3487225826 (3325.6 Mb)

  bond0:0 Link encap:Ethernet  HWaddr 00:14:5E:1C:3B:8F         (双机的业务ip)
          inet addr:10.144.40.2  Bcast:10.144.40.0  Mask:255.255.255.0
          UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1

我现在想让所有的数据包都从 指定的 bond0:0   10.144.40.2出去 该如何作

实际使用中 检测到数据包是由 bond0  10.144.40.1出去的

论坛徽章:
0
2 [报告]
发表于 2007-02-25 17:07 |只看该作者

回复 #1 tangxyu 的帖子

大家过年好啊 !
抽空给看看。谢谢了阿

论坛徽章:
0
3 [报告]
发表于 2007-02-26 00:34 |只看该作者
原帖由 tangxyu 于 2007-2-25 15:48 发表于 1楼  
各位高手老大帮个忙

我现在有个双机环境 2个网卡邦定 作双机
我现在想让所有的数据包都从 指定的 bond0:0   10.144.40.2出去 该如何作

实际使用中 检测到数据包是由 bond0  10.144.40.1出去的


用 iptables 来提供该功能看看。

  1. iptables -I POSTROUTING -t nat -j SNAT --to  10.144.40.2
复制代码


另外一个,其实改一下 default gateway 的 ip 指向 10.144.40.2 不就是一般更通用方式呼?


--

[ 本帖最后由 kenduest 于 2007-2-26 01:06 编辑 ]

论坛徽章:
0
4 [报告]
发表于 2007-02-26 08:59 |只看该作者
不用设定,只有客户端访问哪个IP就从哪个IP回去的。

论坛徽章:
0
5 [报告]
发表于 2007-02-27 09:12 |只看该作者
加个路由

route add -net xx.xx.xx.xx dev bond0:0

论坛徽章:
0
6 [报告]
发表于 2007-02-27 13:22 |只看该作者
原帖由 lky 于 2007-2-26 08:59 发表于 4楼  
不用设定,只有客户端访问哪个IP就从哪个IP回去的。


有点答非所问:p

因为这个与楼主要求没关系。

--

论坛徽章:
0
7 [报告]
发表于 2007-02-27 13:23 |只看该作者
原帖由 ljhb 于 2007-2-27 09:12 发表于 5楼  
加个路由

route add -net xx.xx.xx.xx dev bond0:0


这个也不对。

这样变成宣告该网段就是该介面的区段。其实该网段本来就不是同个区段的范围,所以怎么会这样使用呢 ?

--

论坛徽章:
0
8 [报告]
发表于 2007-02-28 08:57 |只看该作者
一台服务器配置多少IP地址,你访问哪个IP地址,回应的数据包就是从哪IP回去的。你不能光通过ifconfig 查看网卡的流量, bond0:0是个别名设备,可能看不到实际的数据流量,你可通过tcpdump抓包来看数据是通过哪个IP地址回去的。
你想,如果你的电脑访问的10.144.40.2这个IP地址,而回应包是从10.144.40.1这个IP地址回去的,那网络还会通嘛?

论坛徽章:
0
9 [报告]
发表于 2007-02-28 10:20 |只看该作者

回复 #7 kenduest 的帖子

这个表示你访问该网段的时候,是使用bond:0的虚拟ip访问的。你可以测试一下,

ifconfig eth0:0 xx.xx

然后ssh一个server,看看使用哪个ip连接的

在运行
route add -net server_ip_network dev eth0:0

在ssh过去,看看使用哪个IP连接

论坛徽章:
0
10 [报告]
发表于 2007-02-28 14:19 |只看该作者



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

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP