rejtélyes hálózati probléma

Üdv!

Nagyon furcsán viselkedik a linuxos routerem, és már 2 hete szívok vele sikertelenül, úgyhogy szeretnék igénybe venni egy kis kollektív bölcsességet. Bocs ha kicsit bő lére eresztem, próbálok minden lényeges információt bezsúfolni.

Otthoni hálózathoz munkára fogtam az előző desktop gépemet router/fileserver minőségben. OpenSuSE 10.3 ment rá, és ha egy mód van rá a továbbiakban is ezt szeretném használni a YaST miatt, mivel a Linux tudásom max közepesnek mondható.

Múlt héten összelőttem mindent, működött is rendesen, de aztán kitaláltam hogy kipróbálok néhány router disztribúciót is. ClarkConnect és eBox nem akart működni (valószínűleg pontosan amiatt amivel most szívok), úgyhogy elhatároztam hogy visszatérek az openSuSE-ra. Ekkor már elkezdte azt csinálni, amire fent a furcsa jelzőt használtam, és kicsit lejjebb mindjárt definiálom hogy pontosan mit is értek ez alatt. Azt gondolva hogy valamit elszúrtam, még párszor újratelepítettem, de az eredmény mindig ugyanaz volt, egészen keddig (feb. 26), amikor is az N+1-edik alkalom után egyszer csak érthetetlen módon jó lett. Pompásan működött minden úgy másfél napig, amikor is egyik pillanatról a másikra újra előjött a hiba.

A felállás rendkívül egyszerű, van egy bridge mode-ban működő ADSL modem, ezen keresztül DHCP-vel kapok IP címet, és direktben fent vagyok az ISP (Pantel, most már Invitel) belső hálóján. A szerverben 2 alaplapi hálókártya van, ebből az egyik megy a modembe, a másik a switchbe (ami valójában egy SMC WLAN router, de letiltottam minden releváns funkcióját, így csak mint WLAN access point működik). A helyi hálón van 2-5 gép, év- és napszaktól függően (mind Windows). A LAN gépek DHCP-vel kapnak címet, NAT+IP masquerading segítségével bármihez hozzáférhetnek odakinn, befelé viszont minden port csukva. A LAN felé Sambával egy MD RAID array meg van osztva, valamint az SSH engedélyezve van (szintén csak bentről)

Amikor működött, akkor minden működött, pontosan úgy ahogyan elterveztem, amikor viszont nem, akkor a következő tüneteket produkálja:
- Netkapcsolat jó: a linuxos gépen bármit tudok csinálni, minden működik.
- Routolás igazából jó: LAN gépeken megy a névfeloldás, ki lehet pingelni a router mögül, TCP kapcsolatok is okésak (torrent és Steam tölt mint állat)
- HTTP "félig" megy, HTTP redirect-et például megkapja a belső gép: google.com-ról átcsap a google.hu-ra. Rendben el is küldi a request-et, aztán csak vár a szerencsétlen az adatra majd timeoutol
- Samba szintén félig működik: látszik a gép a hálón, sőt ő a master browser, ki lehet listázni a megosztásokat rajta. Ellenben ha rálépek egy megosztásra, csak vár és vár, aztán timeout
- SSH-val nem érem el a gépet (ami különösen dühítő, mert így ide-oda kell dugdosnom a monitort és a billenytűzetet)

Gyanakodtam már mindenfélére. Hardverhibára utal (szerintem) az, hogy egyik pillanatról a másikra jött elő a dolog a hibátlanul működő rendszeren, senki nem nyúlt semmihez. Mikor elromlott, már vagy 12 órája egy fia szem billentyűleütés nem volt a gépen. Ugyanakkor valami konfigurációs hiba kell legyen, mert túl konzisztens a hibás viselkedés.

Szerintetek mit lehetne tenni?

Hozzászólások

Tudom, hogy hozzánőttél a Yast2-höz, nincs ezzel semmi baj.

Esetleg mégis ajánlanám a PCLinuxOS-t (vagy Mandriva-t), ugyanis abban is az ember terminálból indít egy "drakconf"-ot (="Configure your computer" a KDE/gnome panelen/menüben) és grafikusan be lehet állítani gyakorlatilag teljesen.

1 próbát megérhet, a beállításokat tudod, csak a felület más egy picit.

/mazursky

Szerintem ha már szervert építesz akkor az ne Suse-val tedd. Ha linuxal szeretnél internetet megosztani akkor inkább javaslom az iptables-t. Nekem is van otthon egy linuxos szerverem és fut rajta samba, nfs, apache, ftp, squid, postfix stb... Abban is kettő hálókártya van. A eth0 kapcsolódik az internethez majd szabályokkal megoldotam a forwarod és így kapja meg a lan hálózat az internetet. Ja és Debian linux van rajta.

Ezeket a beállításokat a SuSEfirewall-lal csináltam, ami egy shell script (javítsatok ki ha tévedek) frontend az iptables-hez. Szóval röviden: én is azt használom.
Való és igaz, még az én primitív igényeimhez is odarittyentett egy 3 oldalas filter táblát, a szemem is elfárad mire a végére scrollozok, de gondolom ennek nagy része DoS-ellenes szűrés. Mindenesetre a nat postrouting táblában ott figyel a masquerade target, a filter input-ban meg deny a policy, ami nagyjából le is fedi az általam megfogalmazott működést, a többi salátát meg nem volt se kedvem, se motivációm dekódolni, amíg jól ment minden :)

MTU/MSS, PMTU Discovery?
Ping vagy tracepath mit mond?

ping -M do -s 1472 www.index.hu
ping -M do -s 1464 www.index.hu

nemreg egy topicban irta valaki, hogy ha letiltod a routerben a bejovo icmp csomagokat, akkor elerhetetlenne valhatnak weboldalak, mert ha nagyobb packeteket kuldenel, mint ami atmehet a halozaton, akkor kapnal vissza egy "Destination Unreachable (Datagram Too Big)" hibauzenetet, amire a gep elkuldene ujra a csomagot, csak darabolva, namost ha te nem kapod meg ezt az icmp csomagot, akkor nem kuldi ujra a geped, es egyszeruen eltimeoutol a kapcsolat.
az elso hozzaszolasban az MTU mozaikszo erre utalt, szoval szerintem is ez a problema.
http://en.wikipedia.org/wiki/Maximum_transmission_unit

Tyrael

Az MTU kívül-belül 1500. Tényleg annyi, a ping 1472 payload-dal ment, 1473-mal már nem. (nem is vártam mondjuk, de poénból kipróbáltam)

Viszont szerintem nagyon jó nyomon vagytok.

Mivel mint mondtam, a szervergépen tökéletesen megy - és ment mindig is - minden, a figyelmem most a switch-re irányult. Olcsó kis SMC SoHo router (csak éppen most a WAN portját nem használom), nem nagyon voltam már megelégedve vele korábban sem. Mivel nem egy "igazi" switch, valószínűleg nem a physical layer-en, hanem IP szinten forgalmaz, és ezért bekavarhat; biztos PPPoE-re van optimalizálva vagy valami, és nem tud mit kezdeni az 1500-as MTU-val.
Most hogy szóba került, eszembe jutott: nézegettem a logját, amit sajnos azóta már kitöröltem, és határozottam emlékszem olyanra hogy "ICMP subtype 3, valami-valami", és az ICMP fragment needed üzenetek is oda tartoznak.

SŐT! Van is egy tippem, miért kezdett el hirtelen működni, és miért hagyta hirtelen abba.

Mielőtt jó lett, a routert (szóval a switchet) újraindítottam. Akkor minden eltárolt cucc a memóriájából kipusztult, és tiszta lappal indult. Aztán másfél nap működés után egyszer csak túl sok ICMP fragment needed jött, betriggerelt valami DoS detektort benne, és onnantól kezdte el eldobálni őket, PMTUD behalt, LAN gépeken nincs net. Tiszta sor, azt hiszem megvan a ludas. No para, úgyis gigabit switchet akarok venni.

Szerintetek jól gondolom vagy ez hülyeség? És ha jól, akkor valaki nálam okosabb magyarázza már el hogy ez miért volt hatással a teljes egészében belső forgalomra (mint Samba meg SSH), ahol ajtótól ajtóig 1500 az MTU?

Rosszabbnál rosszabb tapasztalataim / tapasztalataink gyűltek SMC routerekkel. A kakósbögre mellett a szobát is melegen tartja, fagy folytonosan, relytélyes okokból kapcsolatot dobál. 7-10 ezer forintért normális eszközt kapsz, lehet, hogy az ősz hajszálakra a hajfesték drágább :D

P.

véletlenül nem rtl-es gigás kártyán kötődsz a lanhoz?

win-es kliensek vannak a lan-on?

Linuxos klienssel is ezek vannak?