LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1542|回复: 7

CentOS5,双网卡,做路由的奇怪问题

[复制链接]
发表于 2007-8-7 10:46:32 | 显示全部楼层 |阅读模式
【不经常接触Linux,所以还是新手】
有一服务器刚装好CentOS 5,双网卡,配置如下

eth0        19.133.70.4 掩码:255.255.255.0 网关:19.133.70.254 (可访问互联网)
eth0:1        19.133.70.5 掩码:255.255.255.0 网关:19.133.70.254 (可访问互联网)

eth1        192.168.200.44 掩码:255.255.255.0
eth1:1         192.168.191.44 掩码:255.255.255.0
eth1:2         192.168.192.44 掩码:255.255.255.0

两个网卡都连到同一台交换机上(问:这样接有问题吗?)

这样做的目的是:
让 192.168.191.0/24 的机器网关设为 192.168.191.44 时,通过 19.133.70.4 访问互联网
让 192.168.192.0/24 的机器网关设为 192.168.192.44 时,通过 19.133.70.5 访问互联网

不过我按照以前的做法是:
iptables -t nat -A POSTROUTING -s 192.168.191.0/24 -o eth0 -j SNAT --to 19.133.70.4
iptables -t nat -A POSTROUTING -s 192.168.192.0/24 -o eth0:1 -j SNAT --to 19.133.70.5

结果失败
在一台 192.168.192.xx 的机器上,是可以 ping通19.133.192.0/24 和 19.133.70.0/24 的机器的,但是访问不到 19.133.70.0/24 上的web等

到底我在哪里做错了呢?
已经执行了
echo 1 > /proc/sys/net/ipv4/ip_forward
发表于 2007-8-8 09:01:57 | 显示全部楼层
两个网卡都连到同一台交换机上  二层没开stp 造成环路,3层交换机可以做
其实你这个可以用zerba路由软件,用19.133.70.4 255.255.255.248,可以用可变长掩码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-8 11:06:24 | 显示全部楼层
您好,我不太明白,是不是两个网卡连到同一台交换机上就不能实现以上设置。
目前的情况是,我用Windows Server 2000的路由与远程访问功能,实现多个子网段通过一个外网IP访问外网。但我们想每个子网段对应一个外网IP,方便监控访问,所以才考虑到用Linux去做的(似乎WinSrv2000的路由与远程访问功能只能实现多个子网通过一个外网IP访问外网)。
如果要用Zerba是不是现有各子网的客户端的掩码都要做相应修改?
回复 支持 反对

使用道具 举报

发表于 2007-8-8 11:34:39 | 显示全部楼层
2个网卡连在同一个交换机上?
内网和外网混在一起了?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-8 11:59:45 | 显示全部楼层
Post by suhe
2个网卡连在同一个交换机上?
内网和外网混在一起了?

可以这样说,因为我们的网络环境比较复杂,几个单位,在大楼内外都有不少客户端,但是上级网络中心只分配了一个子网给我们用,IP不够分配,只能采用下面几个小单位另分虚拟子网的方式了。

我刚才试了一下,iptables -L 不知道为什么之前的策略没有反映出来。我的CentOS是关了SELinux的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-8 12:01:45 | 显示全部楼层
现在我将一个网卡(内网)连在二级交换机上,另一个(外网)连在核心交换机上,这样可以吗
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-10 16:45:35 | 显示全部楼层
so....
回复 支持 反对

使用道具 举报

发表于 2007-8-24 10:11:41 | 显示全部楼层
Post by diekiss
【不经常接触Linux,所以还是新手】
有一服务器刚装好CentOS 5,双网卡,配置如下

eth0        19.133.70.4 掩码:255.255.255.0 网关:19.133.70.254 (可访问互联网)
eth0:1        19.133.70.5 掩码:255.255.255.0 网关:19.133.70.254 (可访问互联网)

[color="Navy"]不明白你为什么设置2个ip在同一个网络内,同一主机,同一个接口上。


eth1        192.168.200.44 掩码:255.255.255.0
eth1:1         192.168.191.44 掩码:255.255.255.0
eth1:2         192.168.192.44 掩码:255.255.255.0

[color="Navy"]你这样做是把3个内网都混接在一个交换机上了,这样如果没有划分vlan,3个内网在同一个广播域,网络冲突严重,也很不安全。

两个网卡都连到同一台交换机上(问:这样接有问题吗?)
[color="Navy"]
把3个内网和外网混接,你想干吗?太不安全了!

这样做的目的是:
让 192.168.191.0/24 的机器网关设为 192.168.191.44 时,通过 19.133.70.4 访问互联网
让 192.168.192.0/24 的机器网关设为 192.168.192.44 时,通过 19.133.70.5 访问互联网

[color="Navy"]这些你可以做路由,先通过支持vlan的二层或三层交换机实现2层隔离,再做路由。

不过我按照以前的做法是:
iptables -t nat -A POSTROUTING -s 192.168.191.0/24 -o eth0 -j SNAT --to 19.133.70.4
iptables -t nat -A POSTROUTING -s 192.168.192.0/24 -o eth0:1 -j SNAT --to 19.133.70.5

结果失败
在一台 192.168.192.xx 的机器上,是可以 ping通19.133.192.0/24 和 19.133.70.0/24 的机器的,但是访问不到 19.133.70.0/24 上的web等

到底我在哪里做错了呢?
已经执行了
echo 1 > /proc/sys/net/ipv4/ip_forward


[color="Navy"]总之,你的这种接法台反常了,二层网络上就不安全,没到iptable这层呢。
基本上没有人这么做,还是重新规划一下拓扑,2层隔离开,在用linux做路由。
回复 支持 反对

使用道具 举报

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

本版积分规则

快速回复 返回顶部 返回列表