在Linux中安装两块网卡网络不通的解决方法
发表于:2007-07-04来源:作者:点击数:
标签:
案例一 一天,小王突然急匆匆的来找我,他说:“我在机子上刚装的redhat怎么老也ping不通 服务器 ,我网卡的驱动都安装了,ping 自己的两块网卡的IP都能通,可就时访问不了服务器。我输入http://172.31.0.101 就提示‘当试图与172.31.0.101联系时,连接被拒
案例一 一天,小王突然急匆匆的来找我,他说:“我在机子上刚装的redhat怎么老也ping不通
服务器,我网卡的驱动都安装了,ping 自己的两块网卡的IP都能通,可就时访问不了服务器。我输入http://172.31.0.101就提示‘当试图与172.31.0.101联系时,连接被拒绝’”
我来到小王的机器前查看了一下网络配置。
[root@rhas root]# ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:D0:B7:C6:8F:1D
inet addr:172.31.0.200 Bcast:172.31.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:16 errors:0 dropped:0 overruns:0 frame:0
TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1306 (1.2 Kb) TX bytes:210 (210.0 b)
Inter
rupt:10 Base address:0xe800 Memory:d9100000-d9100038
eth1 Link encap:Ethernet HWaddr 00:01:03:40:A4:15
inet addr:172.31.0.201 Bcast:172.31.0.255 Mask:255.255.255.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:32 errors:0 dropped:0 overruns:0 carrier:32
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:1920 (1.8 Kb)
Interrupt:11 Base address:0xec00
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1430 errors:0 dropped:0 overruns:0 frame:0
TX packets:1430 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:143776 (140.4 Kb) TX bytes:143776 (140.4 Kb)
[root@rhas root]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
172.31.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
172.31.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth1
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 172.31.0.254 0.0.0.0 UG 0 0 0 eth1
到这一步我猜想网线可能没有插到默认网关对应的网卡上即eth1(嗨!小王的机器被镶在桌子里不太好挪动。连他自己把网线插在那块卡上都不知道了。)
接着我在一机子上ping 172.31.0.200和172.31.0.201,在小王的机器监听
[root@rhas root]# tcpdump
tcpdump: listening on eth0
19:32:29.109283 172.31.0.101 > 172.31.0.200: icmp: echo request (DF)
19:32:30.109337 172.31.0.101 > 172.31.0.200: icmp: echo request (DF)
19:32:31.109418 172.31.0.101 > 172.31.0.200: icmp: echo request (DF)
19:32:42.670162 172.31.0.101 > 172.31.0.201: icmp: echo request (DF)
19:32:43.670218 172.31.0.101 > 172.31.0.201: icmp: echo request (DF)
19:32:44.670291 172.31.0.101 > 172.31.0.201: icmp: echo request (DF)
........................
........................
19:32:56.671040 172.31.0.101 > 172.31.0.201: icmp: echo request (DF)
19:32:57.671064 172.31.0.101 > 172.31.0.201: icmp: echo request (DF)
19:32:58.671133 172.31.0.101 > 172.31.0.201: icmp: echo request (DF)
19:32:59.671187 172.31.0.101 > 172.31.0.201: icmp: echo request (DF)
19:33:00.671257 172.31.0.101 > 172.31.0.201: icmp: echo request (DF)
19:33:01.671349 172.31.0.101 > 172.31.0.201: icmp: echo request (DF)
19:33:02.671377 172.31.0.101 > 172.31.0.201: icmp: echo request (DF)
19:33:03.671441 172.31.0.101 > 172.31.0.201: icmp: echo request (DF)
36 packets received by filter
0 packets dropped by kernel
没有回应,看一下Firewall的设置。
[root@rhas3 123]# iptables -L -n
Chain INPUT (policy A
CCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
又不是防火墙的问题,想了一下,我越发肯定刚才的想法是正确的。
[root@rhas root]# cat /etc/modules.conf
alias eth0 e100
alias eth1 3c59x
alias sound-slot-0 via82cxxx_audio
post-install sound-slot-0 /bin/aumix-minimal -f /etc/.aumixrc -L >/dev/null 2>&1 || :
pre-remove sound-slot-0 /bin/aumix-minimal -f /etc/.aumixrc -S >/dev/null 2>&1 || :
alias usb-controller usb-uhci
[root@rhas root]#mii-tool
eth0: negotiated 100baseTx-Fd flow-control, link ok
eth1: no linkk
找到原因了,果然是插反了。既然不方便换端口最简单的就把eth1即3Com网卡宕调就OK了
当然也可以把两块网卡分配在不同的网段。
[root@rhas root]# vi /etc/sysconfig/network-scripts/ifcfg-eth1
# 3Com Corporation|3c905C-TX/TX-M [Tornado]
DEVICE=eth1
BOOTPROTO=static
BROADCAST=172.31.0.255
HWADDR=00:01:03:40:A4:15
IPADDR=172.31.0.201
NETMASK=255.255.255.0
NETWORK=172.31.0.0
ONBOOT=no
TYPE=Ethernet~
~
~
"/etc/sysconfig/network-scripts/ifcfg-eth1" [已转换] 10L, 207C 9,1 全部
或者在启动哦时根本不要加载3Com网卡的驱动哦。
从启动我们的网络
[root@rhas root]# service network restart
正在关闭接口 eth0: [ 确定 ]
关闭环回接口: [ 确定 ]
设置网络参数: [ 确定 ]
弹出环回接口: [ 确定 ]
弹出界面 eth0:
[ 确定 ]
[root@rhas root]#
[root@rhas root]#
[root@rhas root]#
[root@rhas root]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:D0:B7:C6:8F:1D
inet addr:172.31.0.200 Bcast:172.31.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:68 errors:0 dropped:0 overruns:0 frame:0
TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:5560 (5.4 Kb) TX bytes:504 (504.0 b)
Interrupt:10 Base address:0xe800 Memory:d9100000-d9100038
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:2041 errors:0 dropped:0 overruns:0 frame:0
TX packets:2041 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:209184 (204.2 Kb) TX bytes:209184 (204.2 Kb)
[root@rhas root]# ping 172.31.0.101
PING 172.31.0.101 (172.31.0.101) 56(84) bytes of data.
64 bytes from 172.31.0.101: icmp_seq=0 ttl=64 time=0.542 ms
64 bytes from 172.31.0.101: icmp_seq=1 ttl=64 time=0.270 ms
--- 172.31.0.101 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1004ms
rtt min/avg/max/mdev = 0.270/0.406/0.542/0.136 ms, pipe 2
[root@rhas root]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
172.31.0.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 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 172.31.0.254 0.0.0.0 UG 0 0 0 eth0
[root@rhas root]#
此时访问网络没有问题,故障排除。
案例二 由此我又想相类似的案例,一win98用户错将”TCP/IP-->拨号适配器”设置了IP,结果造成他ping不通其他机器。
e.g.将拨号适配器设置ip=172.31.0.1
C:\>ipconfig/all
Windows 98 IP Configuration
Host Name . . . . . . . . . : R4U2L8
DNS Servers . . . . . . . . :
Node Type . . . . . . . . . : Broadcast
NetBIOS Scope ID. . . . . . :
IP Routing Enabled. . . . . : No
WINS Proxy Enabled. . . . . : No
NetBIOS Resolution Uses DNS : No
0 Ethernet adapter :
Description . . . . . . . . : PPP Adapter.
Physical Address. . . . . . : 44-45-53-54-00-00
DHCP Enabled. . . . . . . . : No
IP Address. . . . . . . . . : 172.31.0.1
Subnet Mask . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . :
Primary WINS Server . . . . :
Secondary WINS Server . . . :
Lease Obtained. . . . . . . :
Lease Expires . . . . . . . :
1 Ethernet adapter :
Description . . . . . . . . : Intel(R) PRO PCI Adapter
Physical Address. . . . . . : 00-D0-B7-C6-8F-1D
DHCP Enabled. . . . . . . . : No
IP Address. . . . . . . . . : 172.31.0.200
Subnet Mask . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . :
Primary WINS Server . . . . :
Secondary WINS Server . . . :
Lease Obtained. . . . . . . :
Lease Expires . . . . . . . :
c:\>route print
Active Routes:
Network Address Netmask Gateway Address Interface Metric
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
172.31.0.0 255.255.255.0 172.31.0.200 172.31.0.200 1
172.31.0.0 255.255.255.0 172.31.0.1 172.31.0.1 1
172.31.0.1 255.255.255.255 127.0.0.1 127.0.0.1 1
172.31.0.200 255.255.255.255 127.0.0.1 127.0.0.1 1
172.31.255.255 255.255.255.255 172.31.0.1 172.31.0.1 1
224.0.0.0 224.0.0.0 172.31.0.200 172.31.0.200 1
224.0.0.0 224.0.0.0 172.31.0.1 172.31.0.1 1
255.255.255.255 255.255.255.255 172.31.0.1 172.31.0.1 1
解决方法:把TCP/IP-->拨号适配器的设置改成动态获取
c:\> ipconfig/all
Windows 98 IP Configuration
Host Name . . . . . . . . . : j
DNS Servers . . . . . . . . :
Node Type . . . . . . . . . : Broadcast
NetBIOS Scope ID. . . . . . :
IP Routing Enabled. . . . . : No
WINS Proxy Enabled. . . . . : No
NetBIOS Resolution Uses DNS : No
0 Ethernet adapter :
Description . . . . . . . . : PPP Adapter.
Physical Address. . . . . . : 44-45-53-54-00-00
DHCP Enabled. . . . . . . . : Yes
IP Address. . . . . . . . . : 0.0.0.0
Subnet Mask . . . . . . . . : 0.0.0.0
Default Gateway . . . . . . :
DHCP Server . . . . . . . . : 255.255.255.255
Primary WINS Server . . . . :
Secondary WINS Server . . . :
Lease Obtained. . . . . . . :
Lease Expires . . . . . . . :
1 Ethernet adapter :
Description . . . . . . . . : Intel(R) PRO PCI Adapter
Physical Address. . . . . . : 00-D0-B7-C6-8F-1D
DHCP Enabled. . . . . . . . : No
IP Address. . . . . . . . . : 172.31.0.200
Subnet Mask . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . :
Primary WINS Server . . . . :
Secondary WINS Server . . . :
Lease Obtained. . . . . . . :
Lease Expires . . . . . . . :
我们在看一下路由表
c:\>route print
Active Routes:
Network Address Netmask Gateway Address Interface Metric
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
172.31.0.0 255.255.255.0 172.31.0.200 172.31.0.200 1
172.31.0.200 255.255.255.255 127.0.0.1 127.0.0.1 1
172.31.255.255 255.255.255.255 172.31.0.200 172.31.0.200 1
224.0.0.0 224.0.0.0 172.31.0.200 172.31.0.200 1
255.255.255.255 255.255.255.255 172.31.0.200 0.0.0.0 1
安装win98机器的网络立即恢复正常。
其实系统把本网段数据包都送到了环路地址( 127.0.0.1 )上把不属于本网段的统统送到172.31.0.1即拨号适配器的接口卡上。没有传到Intel(R) PRO PCI Adapter当然也就不通了。
案例三 在配置好有的人安装vmware后,产生了几块虚拟网卡(vnet0 ,vnet1 vnet8)配置不当也造成网络不通的现象。其实解决方法都类似,最后大家在多网络接口卡的系统里,当网络发生不通的情况一定要主意路由表的设置,以及网线是否连结正确。
原文转自:http://www.ltesting.net