2006
03.30
03.30
Se qualcuno si dovesse trovare nella singolare condizione di debuggare un programma che cattura pacchetti, e che funziona perfettamente effettuando la cattura su una vera rete, ma che crasha miseramente quando si cattura sull’interfaccia di loopback… dia un’occhiata al proprio ifconfig:
eth0 Link encap:Ethernet HWaddr 00:0F:20:C7:97:45
inet addr:w.x.y.z Bcast:w.x.y.127 Mask:255.255.255.128
inet6 addr: fe80::20f:20ff:fec7:9745/64 Scope:Link
UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1
RX packets:15777 errors:0 dropped:0 overruns:0 frame:0
TX packets:11395 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:7136099 (6.8 MiB) TX bytes:939205 (917.1 KiB)
Interrupt:11 Base address:0x2000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1115 errors:0 dropped:0 overruns:0 frame:0
TX packets:1115 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:155221 (151.5 KiB) TX bytes:155221 (151.5 KiB)
In questo modo dovrebbe realizzare che l’MTU dell’interfaccia lo è leggermente più alto di quello delle interfacce Ethernet. Pertanto, gli conviene dare un occhio alle proprie malloc. Io ci ho messo una settimana a capirlo… E ci sono arrivato solo grazie a Valgrind, ottimo tool.
Nessun commento.
Aggiungi il tuo commento