Problem s multihomed serverem

Dalibor Toman dtoman na fortech.cz
Středa Červenec 3 15:06:10 CEST 2013


On 7/3/2013 2:04 PM, Dalibor Toman wrote:
> DD,
>
> novy poznatek je, ze pokud na eth0.vlanB neni v arp tabulce zaznam pro 
> IP vzdaleneho routeru (OSPF soused), pak ten ping a spol z 
> problemoveho stroje na server nefunguje. Jakmile na vzdaleny stroj ze 
> serveru pingnu ci spustim arping na dane IP a zaznam v ARP tabulce se 
> objevi, pak vse funguje. Jakmile zazname v ARP cache expiruje, problem 
> je zase zpet. Ale proc by kernel mel mit s timhle problem mi zatim 
> nedoslo.
>

takze dalsi info:
1) pingam z toho 'problemoveho stroje' (src IP 213.19.1.102) na server 
(213.19.0.64 - je to /32 IP na loopback rozhrani)
2) packet trace na eth0.vlanB rozhrani (viz nize) doklada, ze server se 
pokousi odesilat ARP dotazy na Ip gatewaye (213.19.1.133) ale jako 
hint/src IP  v ARP requestu uvadi sve IP z loopbacku (213.19.0.64) a 
gateway ty requesty zrejme ignoruje
3) jakmile na serveru pustim ping na tu gateway (213.19.1.133) 
vygeneruje se ARP request se src IP 213.19.1.134 - coz je IP na 
eth0.vlanB) a gateway se k tomu prihlasi, odesle odpoved a vse se rozebehne


Vzdalena gateway 213.19.1.133 je cisco ASR - takze asi nejaka nova 
ficura v XE IOSu se kterou jsem zatim nemel tu cest - To ASRko mame v 
provozu jen par tydnu a pred tim s( jinym cisco routerem) problem nebyl. 
Doufam, ze to pujde vypnout. I kdyz na druhou stranu mi od toho Linuxu 
neprijde moc koser, ze do ARP requestu na ethernetu zapisuje jako SRC IP 
adresu z virtualniho rozhrani (loopback)

4) _VYRESENO_ pokud nastavim na eth0.vlanB arp_annonce=1 zacne vse 
fungovat jak ma. ARP request obsahuje v SRC co obsahovat ma.


------

(vycet IP v tom filtru je seznam vsech IP na 'problemovem' stroje ze 
ktereho zlobi ten ping/konektivita na server)
/usr/sbin/tcpdump -enn -i eth0.416 arp or host 213.19.1.102 or host 
213.19.1.106 or host 213.19.1.37
..
..
14:18:50.522801 00:30:48:bd:74:4c > ff:ff:ff:ff:ff:ff, ethertype ARP 
(0x0806), length 42: arp who-has 213.19.1.133 tell 213.19.0.64
14:18:51.522569 00:30:48:bd:74:4c > ff:ff:ff:ff:ff:ff, ethertype ARP 
(0x0806), length 42: arp who-has 213.19.1.133 tell 213.19.0.64
14:18:52.522106 00:30:48:bd:74:4c > ff:ff:ff:ff:ff:ff, ethertype ARP 
(0x0806), length 42: arp who-has 213.19.1.133 tell 213.19.0.64
14:18:53.588691 00:30:48:bd:74:4c > ff:ff:ff:ff:ff:ff, ethertype ARP 
(0x0806), length 42: arp who-has 213.19.1.133 tell 213.19.0.64

14:18:54.588059 00:30:48:bd:74:4c > ff:ff:ff:ff:ff:ff, ethertype ARP 
(0x0806), length 42: arp who-has 213.19.1.133 tell 213.19.1.134
14:18:54.593030 10:f3:11:0a:d8:92 > 00:30:48:bd:74:4c, ethertype ARP 
(0x0806), length 60: arp reply 213.19.1.133 is-at 10:f3:11:0a:d8:92
14:18:54.593037 00:30:48:bd:74:4c > 10:f3:11:0a:d8:92, ethertype IPv4 
(0x0800), length 98: 213.19.0.64 > 213.19.1.102: ICMP echo reply, id 
43880, seq 102, length 64
14:18:55.521361 00:30:48:bd:74:4c > 10:f3:11:0a:d8:92, ethertype IPv4 
(0x0800), length 98: 213.19.0.64 > 213.19.1.102: ICMP echo reply, id 
43880, seq 103, length 64



cisco v debug modu pise
LC/0/0/CPU0:Jul  3 14:37:40 : arp[115]: ARP-PKT: rcvd req src 
213.19.0.64 0030.48bd.744c,
LC/0/0/CPU0:Jul  3 14:37:40 : arp[115]:          dst 213.19.1.133 
0000.0000.0000 if:GigabitEthernet0/0/0/8.416
LC/0/0/CPU0:Jul  3 14:37:40 : arp[115]: ARP-PKT: filtered req src 
213.19.0.64 0030.48bd.744c,
LC/0/0/CPU0:Jul  3 14:37:40 : arp[115]:          dst 213.19.1.133 
0000.0000.0000 if:GigabitEthernet0/0/0/8.416 wrong cable
LC/0/0/CPU0:Jul  3 14:37:41 : arp[115]: ARP-PKT: rcvd req src 
213.19.0.64 0030.48bd.744c,
LC/0/0/CPU0:Jul  3 14:37:41 : arp[115]:          dst 213.19.1.133 
0000.0000.0000 if:GigabitEthernet0/0/0/8.416
LC/0/0/CPU0:Jul  3 14:37:41 : arp[115]: ARP-PKT: filtered req src 
213.19.0.64 0030.48bd.744c,
LC/0/0/CPU0:Jul  3 14:37:41 : arp[115]:          dst 213.19.1.133 
0000.0000.0000 if:GigabitEthernet0/0/0/8.416 wrong cable
LC/0/0/CPU0:Jul  3 14:37:43 : arp[115]: ARP-PKT: rcvd req src 
213.19.1.134 0030.48bd.744c,
LC/0/0/CPU0:Jul  3 14:37:43 : arp[115]:          dst 213.19.1.133 
0000.0000.0000 if:GigabitEthernet0/0/0/8.416
LC/0/0/CPU0:Jul  3 14:37:43 : arp[115]: ARP-PKT: send rep src 
213.19.1.133 10f3.110a.d892,
LC/0/0/CPU0:Jul  3 14:37:43 : arp[115]:          dst 213.19.1.134 
0030.48bd.744c if:GigabitEthernet0/0/0/8.416

Cili tim wrong cable chce zrejme naznacit ze zahodil request protoze 
neprisla ze spravneho rozhrani...

Dik

-- 
Dalibor Toman
Fortech s.r.o.



Další informace o konferenci Linux