IMQ+NAT
Jarek Poplawski
domat w klub.chip.pl
Śro, 21 Wrz 2005, 11:14:10 CEST
Miroslaw Dyduch wrote:
> Dnia wtorek, 20 września 2005 15:16, Jarek Poplawski napisał:
> ....
>
>>Chyba się powtórzę:
>>Jeśli na eth0 działa NAT (SNAT lub MASQUERADE) pakietów
>>wychodzących do internetu, to pakiety przychodzące (-i eth0) w
>>fazie PREROUTING mają ip interfejsu eth0 i dopiero po
>>"zdenatowaniu", czyli w FORWARD lub INPUT można będzie odróżnić
>>ip lanu lub ip serwera (który najczęściej pozostanie zgodny z ip
>>eth0). Nie ma to żadnego związku z ustawieniami IMQ.
>
> Dziękuje za wyprowadznie mnie z błędu w którym tkwiłem.
>
> ...
> Na FORWARD -i eth0 -o eth1 idziesz wszystko ładnie rozpoznaje adresy lanu-
> jest tak jak ma być ;)
>
> Problem się zaczyna z INPUT w mangle.
> iptables -F -t mangle
> iptables -t mangle -A INPUT -i eth0 -j IMQ --todev 0
> wget http://plik_testowy
> prawie nic nie idzie do imq0 (nload -m -u K imq0)- " od czasu do czasu coś
> bardzo małego skoczy"
> ifconfig imq0- od czasu do czasu wpadnie jakiś pakiet
> watch -n1 iptables -L INPUT -t mangle -nv natomiast licznik pokazuje
> prawidłowo scigąniete okolo 14M.
> dydko root # iptables -L INPUT -t mangle -nv
> Chain INPUT (policy ACCEPT 48747 packets, 70M bytes)
> pkts bytes target prot opt in out source
> destination
> 10283 14M IMQ all -- eth0 * 0.0.0.0/0 0.0.0.0/0
> IMQ: todev 0
> dydko root #
>
> Co może byc przyczyną ze nie łapie w INPUT do lokalnej maszyny??
Może to, że IMQ ma swoje ograniczenia i powinno być stosowane w
PREROUTING lub POSTROUTING.
> Dlatego własnie kombinowałem z PREROUTING -d ip_lan_serwera.
Być może czegoś nie mogę zrozumieć, ale:
iptables -t mangle -A PREROUTING -i eth0 -j IMQ --todev 0
przy domyślnym w PLD (ale niedomyślnym w oryginalnym IMQ)
ustawieniu w konfiguracji jądra CONFIG_IMQ_BEHAVIOR_AB pozwoli
przy pomocy:
tc filter add dev imq0 ... u32 match ip dst \
ip_lan_serwera_na_eth0
(i ew. na wszelki wypadek powtórzone z ip_lan_serwera_na_eth1)
skierować ruch przychodzący z internetu przeznaczony dla
serwera(routera) do odpowiedniej klasy, a
tc filter add dev imq0 ... u32 match ip dst \
ip_lan_komputera ...
zadziała podobnie dla komputerów w sieci z adresami lokalnymi.
Jarek P.
Więcej informacji o liście dyskusyjnej pld-users-pl