Pomoc w konfiguracji bridge z poziomu skryptów

Łukasz Maśko masko w ipipan.waw.pl
Sob, 1 Mar 2008, 12:59:44 CET


Dnia piątek, 29 lutego 2008, Andrzej 'The Undefined' Dopierała napisał:
[...]
> hm.. brctl showstp br0?
>
> w obu przypadkach? ;)
> podejrzewam że jak tworzysz ręcznie most, to stp jest wyłączane, a
> automatyka pldowska domyślnie stp włącza. A na radiu stp czasami.. hm..
> działa dziwnie ;) (duplikaty pakietów potrafią rozłączyć połączenie).

Przy ręcznym odpaleniu mam tak:
# brctl showstp br0
br0
 bridge id              8000.001500241413
 designated root        8000.001500241413
 root port                 0                    path cost                  0
 max age                  19.99                 bridge max age            
19.99
 hello time                1.99                 bridge hello time          
1.99
 forward delay            14.99                 bridge forward delay      
14.99
 ageing time             299.98
 hello timer               1.95                 tcn timer                  
0.00
 topology change timer     0.00                 gc timer                   
0.05
 flags

wlan0 (1)
 port id                8001                    state                
forwarding
 designated root        8000.001500241413       path cost                100
 designated bridge      8000.001500241413       message age timer          
0.00
 designated port        8001                    forward delay timer        
0.00
 designated cost           0                    hold timer                 
0.95
 flags

Natomiast przy automacie zaraz po ifup br0:
# brctl showstp br0
br0
 bridge id              8000.001500241413
 designated root        8000.001500241413
 root port                 0                    path cost                  0
 max age                  19.99                 bridge max age            
19.99
 hello time                1.99                 bridge hello time          
1.99
 forward delay            14.99                 bridge forward delay      
14.99
 ageing time             299.98
 hello timer               1.56                 tcn timer                  
0.00
 topology change timer    22.65                 gc timer                   
0.06
 flags                  TOPOLOGY_CHANGE TOPOLOGY_CHANGE_DETECTED

wlan0 (1)
 port id                8001                    state                
forwarding
 designated root        8000.001500241413       path cost                100
 designated bridge      8000.001500241413       message age timer          
0.00
 designated port        8001                    forward delay timer        
0.00
 designated cost           0                    hold timer                 
0.56
 flags

Czyli różnica polega na ustawieniu flag TOPOLOGY_CHANGE oraz 
TOPOLOGY_CHANGE_DETECTED. Być może to jest przyczyną. Ciekawe, czy da się 
to jakoś przestawić, żeby automatycznie nie było ustawiane. Na razie nie 
mogę tego znaleźć.

A teraz najważniejsze: jeśli się chwilę poczeka, to powyższe flagi są 
KASOWANE oraz dhcpcd przyznaje poprawny adres i interfejs zaczyna pracować 
jak należy. Ale sprawdziłem to teraz na sieci z kodowaniem WEP, poprzednie 
objawy były dla sieci WPA - możliwe, że to było przyczyną niepoprawnego 
działania.

Wydaje mi się, że wymuszenie nieustawiania tych flag przy starcie (zapewne 
wystarczy ustawić "topology change timer" na 0 przy starcie) powinno 
zażegnać problem. Tylko sprawdzę jeszcze, czy taki bridge działa poprawnie 
z VirtualBox-em.
-- 
Łukasz Maśko                                           GG:   2441498    _o)
Lukasz.Masko(at)ipipan.waw.pl                                           /\\
Registered Linux User #61028                                           _\_V
Ubuntu: staroafrykańskie słowo oznaczające "Nie umiem zainstalować Debiana"


Więcej informacji o liście dyskusyjnej pld-users-pl