# Il router ADSL si impalla [RISOLTO]

## CRV§ADER//KY

Fino ad oggi ho usato un modem ADSL PPPoE con Libero, senza alcun problema.

Ora ho comprato un router ADSL della US Robotics, a cui mi connetto tramite la stessa ethernet di prima, e la connessione è diventata quasi inutilizzabile: spesso e volentieri, le pagine web vanno in timeout, oppure si aprono dopo 2 minuti di attesa, oppure cominciano ad aprirsi alla massima velocità e poi si piantano bruscamente a metà. Ho notato che la cosa è molto "umorale", ovvero certe volte funziona tutto abbastanza bene e certe altre è completamente impossibile fare qualsiasi cosa.

Se tolgo il router e rimetto il modem, i problemi svaniscono all'istante.

Sotto Windows XP, il router non mi dà alcun problema.

Firewall, traffic shaper e programmi di p2p sono disattivati (nel senso che non sono stati mai caricati dall'ultimo reboot).

Il computer è impostato con IP statico (ma se uso DHCP non cambia nulla). Se pingo un server a caso (www.kernel.org) non perdo neanche un pacchetto e ho una latenza costante di min/avg/max/mdev = 199.209/208.390/254.420/10.633 ms

Idee? A me viene in mente soltanto qualche rogna di MSS o di frammentazione dei pacchetti IP, che peraltro non ho la più pallida idea di come verificare né risolvere.

 :Crying or Very sad: 

----------

## MeMyselfAndI

non e' qualche problema con la scheda di rete ?

che modulo usi ? Provato ad aumentare il log di caricamento del modulo ?

dmesg o altro non dicono niente ?

----------

## djinnZ

aver provato a mettere su il modem non dice niente.

Prova ad agire sul router e vedi se disconnettendo e riconnettendo la linea si ristabilisce. In tal caso è un problema del tuo isp o avrai configurato male il router.

----------

## CRV§ADER//KY

 *MeMyselfAndI wrote:*   

> non e' qualche problema con la scheda di rete ?

 

È una normalissima ethernet integrata NVidia MCP55. Credo sia quasi sicuramente un problema di configurazione... ma non riesco a capire cosa.

 *Quote:*   

> aver provato a mettere su il modem non dice niente.
> 
> Prova ad agire sul router e vedi se disconnettendo e riconnettendo la linea si ristabilisce. In tal caso è un problema del tuo isp o avrai configurato male il router.

 

No, disconnnettendo non va a posto. Aver provato il modem la dice lunga, in quanto poiché

1)col modem funziona, sempre

2)col router su windows funziona

3)col router su linux non funziona

Per forza di cose non può essere colpa né del router né dell'ISP, ma per forza di linux o di un'incompatibilità del router con linux.

----------

## djinnZ

 *CRV§ADER//KY wrote:*   

> È una normalissima ethernet integrata NVidia MCP55

 

Possibile anche che sia un problema di driver, che il ping funzioni non è una certezza.

Non è che parte il ppp per conto suo? usi forse kppp o come diavolo si chiama e simili?

route cosa riporta?

/etc/conf.d/net (riportalo senza commenti, ovviamente)

dovresti fornire qualche informazione in più

----------

## otaku

Hai provato a verificare se l'MTU rimane uguale in tutte le combinazioni che hai descritto?

----------

## CRV§ADER//KY

 *otaku wrote:*   

> Hai provato a verificare se l'MTU rimane uguale in tutte le combinazioni che hai descritto?

 

Col modem:

eth0: 1500

eth1: 1500

ppp0: 1492

Col router:

eth0: 1500

eth1: 1500

Ho provato ora a tirarla giù a 1300, ma senza alcun risultato.

 *Quote:*   

> Non è che parte il ppp per conto suo? usi forse kppp o come diavolo si chiama e simili?

 

No, quando uso il router il modem è staccato fisicamente, e viceversa. Uso soltanto lo script /etc/init.d/net.*

 *Quote:*   

> Possibile anche che sia un problema di driver

 

Non si concilia col fatto che la medesima scheda ethernet, col modem PPPoE, funzioni perfettamente...

Configurazione col modem:

```
config_eth0=( "192.168.2.1/24" )

config_eth1=( "10.0.0.1/8" )

config_ppp0=( "ppp" )

link_ppp0="eth0"

plugins_ppp0=("pppoe")

pppd_ppp0=(

     "defaultroute"  # Make this PPP interface the default route

     "usepeerdns" # Use the DNS settings provided by PPP

     "ipcp-accept-remote"    # Accept the peers idea of remote address

     "ipcp-accept-local" # Accept the peers idea of local address

)

```

Configurazione col router:

```
config_eth1=( "10.0.0.1/8" )

config_eth0=( "dhcp" )
```

eth1 non è usata.

col modem:

```
# route

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

151.6.131.65    *               255.255.255.255 UH    0      0        0 ppp0

192.168.2.0     *               255.255.255.0   U     0      0        0 eth0

10.0.0.0        *               255.0.0.0       U     0      0        0 eth1

loopback        *               255.0.0.0       U     0      0        0 lo

default         151.6.131.65    0.0.0.0         UG    0      0        0 ppp0
```

col router:

```
# route

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.2.0     *               255.255.255.0   U     0      0        0 eth0

10.0.0.0        *               255.0.0.0       U     0      0        0 eth1

loopback        *               255.0.0.0       U     0      0        0 lo

default         .               0.0.0.0         UG    0      0        0 eth0

```

Ho fatto un po' di test: ho uploadato su un server che non mi ha mai dato problemi di velocità una pagina con sopra 103 immagini piccole, per un totale di 873kb, e ho misurato quanto ci metto a caricarla col browser (premendo "ricarica", la cache viene sovrascritta. Non uso proxy).

Ho provato sia con firefox sia con opera, con risultati allineati.

Modem: 10 tentativi, 13-18 secondi

Router: primi 5 tentativi: 13-18 secondi. 6° tentativo e successivi: impallamento TOTALE

A quel punto l'interfaccia è andata in tilt per 5-8 minuti, durante i quali non riuscivo neanche ad aprire la pagina di configurazione del router, che è in rete locale. A questo punto direte, "va beh, è chiaro che è il router".... e invece no: ho fatto partire Windows XP SP2 da VMWare, connesso alla rete locale in modalità bridged tramite la stessa eth0 che in quel momento non funzionava e ho aperto la pagina del router. 

Aperta istantaneamente. Ritorno a linux, provo, e continua ad andarmi in timeout. /etc/init.d/net.eth0 restart, nada sempre morto (in compenso il DHCP dal router è arrivato nel giro di mezzo secondo).

5 minuti dopo si sblocca da solo.

i moduli di vmnet sono innocenti: non erano caricati quando si è impallato.

Altre volte invece accade un impallamento parziale, cioé la pagina comincia a caricare e si impalla a metà. Pagine più semplici vengono caricate correttamente.

Ho provato a sniffare il traffico con wireshark in uno dei momenti di impallamento totale:

1)chiudo tutto

2)faccio partire wireshark

3)nc mioserver.com 80

GET / HTTP/1.0

4)aspetto.... nessuna risposta. Su wireshark, compaiono la risoluzione del DNS (istantanea) seguita da 4 TCP SYN in uscita, a distanza di 3-8 secondi l'una dall'altra, senza alcuna risposta. Apro un'altra finestra, pingo il server, risposta istantanea. L'HTTP è ancora morto. contemporaneamente, IE su vmware funziona perfettamente (sulla medesima pagina web).

NB: sto sniffando da linux stesso, non ho modo di sapere se quei pacchetti siano effettivamente usciti dalla scheda. Domani mi ingegnerò a sniffare da un secondo PC...

Ma le stranezze non finiscono qui.... l'impallamento pare sia relativo solo ad alcuni server; per esempio quando altervista è piantato google funziona regolarmente (nel frattempo, su winxp funzionano entrambi).

Ho provato a passare su eth1 (una scheda identica a eth0 sempre integrata sulla motherboard), senza risultato.

Ho anche provato a staccare e riattaccare fisicamente il cavo di alimentazione del router e il doppino telefonico.

 :Mad:   :Mad:   :Mad:   :Mad:   :Mad: 

----------

## MeMyselfAndI

a me quel . nella riga default del comando route mi puzza un po eh.... cosi' a occhio

----------

## stefanonafets

il default gw nn dovrebbe essere l'ip del router?

----------

## djinnZ

Infatti. Se hai due interfacce di rete devi definire il default gateway ti manca quello.

----------

## CRV§ADER//KY

se fosse quello il problema, non funzionerebbe MAI. invece va a balzelloni.

----------

## djinnZ

è quello, fidati. Se vuoi la controprova disabilita l'interfaccia eth1 e dovrebbe andare correttamente l'ip del router come default gateway.

----------

## CRV§ADER//KY

 *djinnZ wrote:*   

> è quello, fidati. Se vuoi la controprova disabilita l'interfaccia eth1 e dovrebbe andare correttamente l'ip del router come default gateway.

 

disabilitato eth1.... ovviamente non è cambiato nulla.

```
 # route

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.2.0     *               255.255.255.0   U     0      0        0 eth0

loopback        *               255.0.0.0       U     0      0        0 lo

default         .               0.0.0.0         UG    0      0        0 eth0

# cat /etc/conf.d/net

config_eth0=( "192.168.2.2/24" )

routes_eth0=("default via 192.168.2.1")

dns_servers_eth0="192.168.2.1"
```

----------

## randomaze

 *CRV§ADER//KY wrote:*   

> # cat /etc/conf.d/net
> 
> config_eth0=( "192.168.2.2/24" )
> 
> routes_eth0=("default via 192.168.2.1")

 

Per il punto prova ad aggiungere il gateway a manina con qualcosa tipo:

```
route add default gw 192.168.2.1
```

Poi, nel caso, prova a cambiare la sintassi nel file di conf:

```
config_eth0=( "192.168.2.2 netmask 255.255.255.0 broadcast 192.168.2.255" )

routes_eth0=("default via 192.168.2.1")
```

Altro appunto: io tempo fa con libero avevo problemi quando il DNS del router era solo soletto... poi ho spostato la gestione in resolv.conf aggiungendo altri due DNS esterni e la cosa ha migliorato.

----------

## flocchini

una prova stupida: se butti tutto provvisoriamente e metti su networkmanager x una prova con dhcp al volo cosa succede? (networkmanager x esperienza e' noto x strabattersene di quello che trova sul sistema e seguire in maniera becera il dhcp...).

Almeno si comincia a capire se e' un probl di config o della scheda in se' altrove

----------

## CRV§ADER//KY

riportato indietro il router USR e sostituito con un DLink... ora funziona perfettamente.

Resta da capire come mai quando linux era impallato windows funzionasse perfettamente... anche se ho una teoria: su linux usavo firefox e opera, su windows Internet Explorer. Ricordate che avevo detto di eseguire il test caricando una pagina con 103 immagini? bene. Evidentemente i primi due browser effettuavano le richieste in maniera molto più "aggressiva" di IE, mandando temporaneamente l'IP richiedente nella blacklist dell'IDS del router (non disattivabile).

Almeno, questa è l'unica spiegazione plausibile che mi viene in mente   :Shocked: 

----------

## Vendicatore

Io sto avendo problemi simili, ma con un Netgear834GT.

Prima usavo il router con ADSL 8Mb e non ho mai avuto alcun problema, poi grazie a Mamma Telecom (...) che mi proponeva un upgrade gratuito alla 20Mb su ADSL2 sono inziati i problemi.

All'inizio non avevo problemi in quanto usavo il router in comodato di Telecom (che è l'unico modo per vedere anche la home TV...), disdetta quella ho riagganciato il mio router e sono iniziate le grane.

Ongi tanti timeout e disconnessioni dello stesso e via dicendo.

Solo sotto linux (in che è abbastanza assurdo, visto che parliamo di un router...)...

----------

