LINUX.ORG.RU

Избранные сообщения artanis

Странное поведение сетевых карт на XCP 1,6 (cent os 5,7 based)

Форум — Admin

Есть система XCP 1,6 на основе cent os 5.7

У нее есть 2 сетевых интерфейса:

$# lspci | grep Ethernet
	00:19.0 Ethernet controller: Intel Corporation 82579V Gigabit Network Connection (rev 04)
	03:00.0 Ethernet controller: Intel Corporation 82541PI Gigabit Ethernet Controller (rev 05)
Первый работает нормально, по второму сетевому интерфейсу не ходят пакеты (rx-tx - 0) но линк с другими устройствами поднимается. (другое устройство видит линк)
Eth0 - бриджуется и работает.
eth1 - не бриджуется и не работает(rx-tx-0, сеть недоступна).

Немного информации:

$# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:22:4D:87:00:D3  
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:2135829 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1446953 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1123671550 (1.0 GiB)  TX bytes:489060146 (466.4 MiB)
          Interrupt:20 Memory:f7e00000-f7e20000 

eth1      Link encap:Ethernet  HWaddr 00:0E:0C:75:A5:8A  
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING 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)
{…} (vif 1.1 4.1)

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:10412549 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10412549 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:1819304196 (1.6 GiB)  TX bytes:1819304196 (1.6 GiB)

xenbr0    Link encap:Ethernet  HWaddr 00:22:4D:87:00:D3  
          inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:1055727 errors:0 dropped:0 overruns:0 frame:0
          TX packets:410804 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:2569233627 (2.3 GiB)  TX bytes:61877773 (59.0 MiB)

Пакетов на интерфейсе нет вообще:

$# tcpdump -i eth1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1, link-type EN10MB (Ethernet), capture size 65535 bytes
^C
0 packets captured
0 packets received by filter
0 packets dropped by kernel 

К бриджу eth1 не имеет отношения:

$#: brctl show
bridge name	bridge id		STP enabled	interfaces
xenbr0		0000.00224d8700d3	no		eth0
							vif1.1
							vif4.1
$# cat /etc/sysconfig/network-scripts/ifcfg-eth1 
DEVICE=eth1
HWADDR=00:0E:0C:75:A5:8A
IPADDR=192.168.0.1
NETMASK=255.255.255.0
BROADCAST=192.168.0.255
ONBOOT=yes
Роуты странные, откуда то при буде берется 169.254, если его удалить руками нияего не изменится:
$# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 xenbr0
192.168.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
0.0.0.0         192.168.1.1     0.0.0.0         UG        0 0          0 xenbr0
Файерволл должен принимать запросы, iptables -F && iptables -X не меняет ситуации:
$# iptables-save
# Generated by iptables-save v1.3.5 on Mon Mar 18 20:04:28 2013
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [10821886:100659717550]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -p gre -j ACCEPT 
-A INPUT -j RH-Firewall-1-INPUT 
-A FORWARD -j RH-Firewall-1-INPUT 
-A RH-Firewall-1-INPUT -i lo -j ACCEPT 
-A RH-Firewall-1-INPUT -p icmp -m icmp --icmp-type any -j ACCEPT 
-A RH-Firewall-1-INPUT -p esp -j ACCEPT 
-A RH-Firewall-1-INPUT -p ah -j ACCEPT 
-A RH-Firewall-1-INPUT -d 224.0.0.251 -p udp -m udp --dport 5353 -j ACCEPT 
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT 
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT 
-A RH-Firewall-1-INPUT -i xenapi -p udp -m udp --dport 67 -j ACCEPT 
-A RH-Firewall-1-INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
-A RH-Firewall-1-INPUT -p udp -m state --state NEW -m udp --dport 694 -j ACCEPT 
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT 
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT 
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT 
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited 
COMMIT
Модули подгружены соответствующие моделям сетевых карт:
$# lsmod | grep e100
e1000                 142698  0 
e1000e                167849  0 

$# cat /etc/modprobe.conf
alias eth0 e1000e
alias eth1 e1000
Модуль e100 - последний:
$# cat /sys/module/e1000/version 
8.0.35-NAPI

Что пробовал делать:

  • Менять eth1 на dlink - ничего не поменялось симптомы такие же.
  • Менять pci порт - все остается неизменным.
  • Бутаться с LiveCD debian - оба интерфейса прекрасно работают.
  • Все что нашел в логах (а плохо искал наверное) -
$# cat /var/log/dmesg | grep eth1
[   26.318360] e1000: eth1: e1000_probe: Intel(R) PRO/1000 Network Connection
[   26.731119] eth1 renamed to side-20496-eth1 by udevd [5139]
$# cat /var/log/dmesg | grep 0000:03:00.0
[    4.104130] pci 0000:03:00.0: reg 10 32bit mmio: [0xf7d40000-0xf7d5ffff]
[    4.104157] pci 0000:03:00.0: reg 14 32bit mmio: [0xf7d20000-0xf7d3ffff]
[    4.104182] pci 0000:03:00.0: reg 18 io port: [0xe000-0xe03f]
[    4.104281] pci 0000:03:00.0: reg 30 32bit mmio pref: [0xf7d00000-0xf7d1ffff]
[    4.104387] pci 0000:03:00.0: PME# supported from D0 D3hot D3cold
[    4.104400] pci 0000:03:00.0: PME# disabled
[   25.715179] e1000 0000:03:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[   26.022460] e1000: 0000:03:00.0: e1000_probe: (PCI:33MHz:32-bit) 00:0e:0c:75:a5:8a

Насколько я понял, udevd переименовывает все, что не является eth0 side-$rdn-ethX на время бута, а потом переименовывает обратно, вроде бы, это стандартный процесс.
Вообщем где что еще посмотреть не пойму, встал в ступор - решил обратиться к вам.
Заранее спасибо!

 , ,

artanis
()