1 (edytowany przez geos 2015-08-04 18:25:38)

Temat: P2812HNU-Fx zrzuty tcpdump

port WAN nie otrzymuje adresu IP od dostawcy internetu (vectra, modem cisco EPC3010). ten sam kabelek podpięty pod peceta lub do starego Linksysa na Tomato adres IP pozyskuje. udało mi się na ruterze z openwrt zainstalować tcpdump z gałęzi RC3 dla wersji openwrt 14.07. przedstawiam poniżej zrzut z tcpdump dla portów 67 i 68. byłbym wdzięczny, gdyby ktoś mógł zerknąć i odpisać, czy z tych zrzutów wynika jakiś powód dla którego WAN nie dostaje IP lub jakie dodatkowe czynności mogę przeprowadzić aby zdiagnozować problem.

ogólnie procedura przyznawania adresu jest jakby dwuetapowa. na początku przydzielany jest adres 192.168.100.10 i pod adresem 192.168.100.1 jest strona konfiguracyjna modemu cisco. po jakimś czasie ten adres przechodzi we właściwy adres publiczny.

poniżej zamieszczam również przykładowy zrzut jak to wygląda na pececie.
0a:00:27:00:11:22 - to ustawiony mac adres portu WAN w ruterze

pecet
http://pastebin.com/raw.php?i=NGqVGC7M

ruter z openwrt
http://pastebin.com/raw.php?i=Uhe3dm7X

2

Odp: P2812HNU-Fx zrzuty tcpdump

Ustaw taki sam adres mac jak masz na pc i zobacz.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: P2812HNU-Fx zrzuty tcpdump

oki, zrobię też tak. w międzyczasie tutaj wklejam bardziej szczegółowe logi:

http://pastebin.com/raw.php?i=2CK5EUH7

4

Odp: P2812HNU-Fx zrzuty tcpdump

niestety, nie działa sad podpytałem tu i ówdzie, i porównałem wywołania udhcpc na tomato i na openwrt. w ruterze z tomato można zmieniać adresy mac na dowolne i dostaje się ip. co ciekawe, Zyxel z openwrt podłączony do Linksysa jako klient też dostaje adres ip bez problemu. zdaję więc sobie sprawę, że problem może być wielowarstwowy i może być wypadkową wielu czynników (modem, udhcpc, firewall itp).

tomato

udhcpc -i vlan1 -b -s dhcpc-event -H nazwa_hosta -m -S

openwrt

udhcpc -p /var/run/udhcpc-eth0.2.pid -s /lib/netifd/

z informacji znalezionych w internecie wnioskuję, że wywołanie w openwrt po prostu zapisuje pid procesu do pliku (-p) i wywołuje skrypt (skrypty?) z podanego katalogu (-s).

w tomato opcje określają interfejs (-i), również miejsce zapisu pid (-p), przesyłaną nazwę hosta (-H), ma działać w tle (-b), logować do sysloga (-S) oraz opcję, której znaczenia nie znalazłem: -m

w zaiązku z powyższym mam pytania:
a) co oznacza opcja -m?
b) gdzie i czy mogę ustawić takie same opcje wywołania w openwrt jak w tomato (z dokładnością do lokalizacji i nazw plików)
c) czy całkowite wyłączenie firewalla to:

/etc/init.d/firewall stop
/etc/init.d/firewall disable

i od tej chwili oraz po restarcie ruch nie będzie filtrowany?

5

Odp: P2812HNU-Fx zrzuty tcpdump

Możesz przecież z palca wywołać udhcpc. W openwrt jest to w /lib/netifd/proto/dhcp.sh. -m nie istnieje we współczesnym busyboxie.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

6

Odp: P2812HNU-Fx zrzuty tcpdump

próbowałem z palca, ale ogólnie udhcpc cały czas działa jako demon dopóki jest "link" (bez niego się wyłącza). chciałem go więc ubić tymczasowo, aby nie był aktywny, ale się sam podnosi. dla czystości scenariusza testowego wolałbym, aby działała tylko jedna instancja udhcpc ale nie wiem, czy w tym wypadku ma to jakieś znaczenie.

7

Odp: P2812HNU-Fx zrzuty tcpdump

zrobiłem też zrzuty z linksysa z tomato, który to w tych samych warunkach połączeniowych adres pozyskuje.

http://pastebin.com/raw.php?i=FjRM9kQw

proszę traktować to co napiszę z dystansem, ale zauważyłem, że w tomato co jakiś czas zmieniany jest xid w pakietach discover i w pewnym momencie ruter otrzymuje ofertę na najnowszy xid. w openwrt sprawa jest trochę odmienna, nie ma zmiany wartości xid, ruter cały czas wysyła pakiety z jednym xid ad inifinitum:

http://pastebin.com/raw.php?i=fdqLkBgr

w tomato wersja udhcpc jest starsza 1.21.1, w openwrt nowsza 1.22.1. czy to może mieć znaczenie? czy można jakoś wymusić zmianę xid co jakiś czas?

8 (edytowany przez geos 2015-08-09 19:27:42)

Odp: P2812HNU-Fx zrzuty tcpdump

może zabrzmi to jak przepis babci Jadzi na dobre ciasto a ja wyjdę na durnia - trudno, ale tak jest i nic na to nie poradzę. skończyło się na tym, że trzeba wyłączyć modem vectry tak na mniej więcej dwie minuty. jeśli po włączeniu ruter nie załapie adresu z dhcp - a zazwyczaj nie załapuje - to należy powtórzyć operację. tak więc przepis na dobre połączenie przez modem Cisco EPC3010 to dwukrotne, około dwuminutowe wyłączenia + szczypta cierpliwości do smaku. nie szukać drugiego dna w konfiguracji bo go najprawdopodobniej nie ma. te urządzenia dogadują się opornie, ale się w końcu dogadają. wydaje mi się, że tego typu zachowania są trudne w zidentyfikowaniu i szlag człowieka trafia jak nie potrafi uchwycić jakichś korelacji, ale może bardziej doświadczeni wpadliby na to od razu smile

dziękuję za wszelką pomoc. na plus mogę zaliczyć, że poznałem trochę tcpdumpa smile

pozdrawiam
geos