第二张网卡配置不起作用

第二张网卡配置不起作用

我有 4 台运行 Centos 5 的服务器。它们都有两张以太网网卡。

我已经192.168.1.x在他们的卡上配置了 IP 地址eth0。他们都使用自己的eth0卡连接到同一个交换机,并且都正常工作。

我已经10.72.11.x在他们的卡上配置了 IP 地址。他们eth1都使用他们的卡连接到同一个交换机 - 与卡一起使用的交换机不同eth0-eth1而且他们并非全部都在工作。

他们的配置文件如下:

DEVICE=eth1
BOOTPROTO=static
IPADDR=10.72.11.236
BROADCAST=10.72.11.191
NETMASK=255.255.255.192
NETWORK=10.72.11.128
HWADDR=84:2B:2B:55:4B:98
IPV6INIT=yes
IPV6_AUTOCONF=yes
ONBOOT=yes

界面正在启动并按我的需要进行配置。

[root@sql1 network-scripts]# ifconfig
**eth0**  Link encap:Ethernet  HWaddr 84:2B:2B:55:4B:97
          inet addr:192.168.1.105  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::862b:2bff:fe55:4b97/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2981 errors:0 dropped:0 overruns:0 frame:0
          TX packets:319 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:386809 (377.7 KiB)  TX bytes:66134 (64.5 KiB)
          Interrupt:36 Memory:da000000-da012800

**eth1**  Link encap:Ethernet  HWaddr 84:2B:2B:55:4B:98
          inet addr:10.72.11.236  Bcast:10.72.11.191  Mask:255.255.255.192
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Interrupt:48 Memory:dc000000-dc012800  

我还添加了route-eth1如下文件:

10.0.0.0/8 via 10.72.11.254

我觉得路由看起来不错:

[root@sql1 network-scripts]# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
10.72.11.192    0.0.0.0         255.255.255.192 U         0 0          0 eth1
192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 eth1
10.0.0.0        10.72.11.254    255.0.0.0       UG        0 0          0 eth1
0.0.0.0         192.168.1.1     0.0.0.0         UG        0 0          0 eth0

但我无法从一台服务器 ping 另一台服务器。

[root@sql1 network-scripts]# ping 10.72.11.235
PING 10.72.11.235 (10.72.11.235) 56(84) bytes of data.
From 10.72.11.236 icmp_seq=1 Destination Host Unreachable
From 10.72.11.236 icmp_seq=2 Destination Host Unreachable
From 10.72.11.236 icmp_seq=3 Destination Host Unreachable
From 10.72.11.236 icmp_seq=4 Destination Host Unreachable
From 10.72.11.236 icmp_seq=5 Destination Host Unreachable
From 10.72.11.236 icmp_seq=6 Destination Host Unreachable
^C
--- 10.72.11.235 ping statistics ---
7 packets transmitted, 0 received, +6 errors, 100% packet loss, time 6033ms, pipe 3

我究竟做错了什么?

答案1

应该注意的是,您的 NIC 无法正常“工作”。您的 ifconfig 输出未显示正常工作链接所需的“RUNNING”。请注意UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1eth0 接口的行。eth1 输出中没有明显的“RUNNING”。根据我的经验,这表明存在低级问题。例如:电缆损坏/断开。

您插入电缆的 NIC 可能不是 eth1 吗?服务器可能会出现一些奇怪的命名。尝试检查 /var/log/messages 的输出,看看它是否报告接口连接(断开)。同样,看看在连接/断开连接时或在启动期间是否收到任何诊断信息。检查这是否发生在所有 5 个盒子上。您可能还想尝试图形配置工具,以防配置文件中出现拼写错误。(system-config-network

答案2

考虑一下你的子网设置:

IPADDR=10.72.11.236
BROADCAST=10.72.11.191
NETMASK=255.255.255.192
NETWORK=10.72.11.128

以 2 为基数:

236 is 1110 1100
191 is 1011 1111
192 is 1100 0000
128 is 1000 0000

您的 IP 位于子网之外 - 10.72.11.236 不在 10.72.11.128/26 中,10.72.11.172 在。17.72.11.235 也不在,但 10.72.11.171 在。请更改您的 IP 或将广播更改为 .255,将网络更改为 .192。或者(除非您有要求),在 10.72.11.0 的下半部分(即 10.72.11.0/26)中运行,或者只使用 /24 并省去麻烦。

答案3

尝试使用 ipcalchttp://jodies.de/ipcalc,在配置网络和子网时有很大帮助。

# ipcalc 10.72.11.236/255.255.255.192
Address:   10.72.11.236         00001010.01001000.00001011.11 101100
Netmask:   255.255.255.192 = 26 11111111.11111111.11111111.11 000000
Wildcard:  0.0.0.63             00000000.00000000.00000000.00 111111
=>
Network:   10.72.11.192/26      00001010.01001000.00001011.11 000000
HostMin:   10.72.11.193         00001010.01001000.00001011.11 000001
HostMax:   10.72.11.254         00001010.01001000.00001011.11 111110
Broadcast: 10.72.11.255         00001010.01001000.00001011.11 111111
Hosts/Net: 62                    Class A, Private Internet

理查德

答案4

进入 eth0 的入站流量应通过 eth0 返回,反之亦然。尝试执行 TCPdump 以检查流量流向何处。

您还需要基于策略的路由来实现这一点:请参阅Linux 2 网卡路由取决于使用的接口

相关内容