[+] Nie mog

Masz problemy z siecią bądź internetem? Zapytaj tu
natomiast
Posty: 25
Rejestracja: 17 kwietnia 2009, 12:05

[+] Nie mogę pingować świata zewnętrznego

Post autor: natomiast »

Witam.
Dzisiaj rano miałem awarie zasilania czego skutkiem "nieoczekiwanym" jest wyłączeniem się komputera pełniącego role rutera (na Debianie Lenny). Po włączeniu niby wszystko ruszyło jednak nie do końca. Mianowicie nie mogę pingować świata zewnętrznego co wiąże się też z dostępem do paru usług a raczej jego brakiem. Sieci wygląda tak:

Kod: Zaznacz cały

Podsieć 10.0.0.0<-->router<-->Podsieć 172.16.0.0
Ruter ma 3 kartę z podłączonym modemem z internetem. Z rutera wszystko działa poprawnie, można pingować np. onet.pl zarówno po nazwie jak i adresie IP. Natomiast z klienta sieci 172.16.0.0 (sieć 10.0.0.0 nie jest podłączona do internetu) mogę pingować co najwyżej interfejs rutera do którego podłączony jest internet. Dalej już nie idzie. Przekierowanie jest włączone, nawet jest internet (przez Squid3), a pingi nie chodzą. Wszystkie usługi działają ale np. nie mogę ustanowić połączenia z serwerem, na którym znajduję się firmowa poczta (co rodzi niemałą frustrację wśród współpracowników) bo nawet nie mogę pingować jego adresu.
Proszę o pomoc. Podaję parę rzeczy, które mogą się przydać:

Kod: Zaznacz cały

iptables -L -n

Kod: Zaznacz cały

Chain INPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp spt:3128 dpt:80 
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
ACCEPT     tcp  --  0.0.0.0/0            172.16.0.0/16       tcp dpt:3128 
ACCEPT     tcp  --  0.0.0.0/0            172.16.0.0/16       tcp spt:3128 
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp spt:53 
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp spt:53 
ACCEPT     udp  --  172.16.0.0/16        0.0.0.0/0           udp spts:1024:65535 dpt:53 
ACCEPT     tcp  --  172.16.0.0/16        0.0.0.0/0           tcp spts:1024:65535 dpt:53 
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  10.0.0.0/8           0.0.0.0/0           
ACCEPT     all  --  172.16.0.0/16        0.0.0.0/0           

Chain FORWARD (policy DROP)
target     prot opt source               destination         
ACCEPT     all  --  172.16.0.0/16        0.0.0.0/0           
ACCEPT     tcp  --  0.0.0.0/0            172.16.0.0/16       tcp spt:443 
ACCEPT     tcp  --  0.0.0.0/0            172.16.0.0/16       tcp spt:143 
ACCEPT     tcp  --  0.0.0.0/0            172.16.0.0/16       tcp spt:110 
ACCEPT     tcp  --  0.0.0.0/0            172.16.0.0/16       tcp spt:25 
ACCEPT     tcp  --  0.0.0.0/0            172.16.0.0/16       tcp spt:3306 
ACCEPT     tcp  --  0.0.0.0/0            172.16.0.0/16       tcp spt:21 
ACCEPT     tcp  --  0.0.0.0/0            172.16.0.0/16       tcp spt:20 
ACCEPT     tcp  --  0.0.0.0/0            172.16.0.0/16       tcp spt:8074 
ACCEPT     tcp  --  0.0.0.0/0            172.16.0.0/16       tcp spt:6666 
ACCEPT     all  --  172.16.0.0/16        10.0.0.0/8          
ACCEPT     all  --  10.0.0.0/8           172.16.0.0/16       

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Kod: Zaznacz cały

iptables -L -n -t nat

Kod: Zaznacz cały

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
REDIRECT   tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:80 redir ports 3128 

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         
MASQUERADE  all  --  172.16.0.0/16        0.0.0.0/0           

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Kod: Zaznacz cały

route -n

Kod: Zaznacz cały

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
83.3.118.112    0.0.0.0         255.255.255.248 U     0      0        0 eth0
172.16.0.0      0.0.0.0         255.255.0.0     U     0      0        0 eth2
10.0.0.0        0.0.0.0         255.0.0.0       U     0      0        0 eth1
0.0.0.0         83.3.118.113    0.0.0.0         UG    0      0        0 eth0

Kod: Zaznacz cały

cat /proc/sys/net/ipv4/conf/all/forwarding
Cyphermen
Beginner
Posty: 426
Rejestracja: 24 maja 2009, 10:56
Lokalizacja: cze-wa

Post autor: Cyphermen »

Pytanie, czy podsieć dostaje neta z dhcp czy manualna konfiguracja? Czy obie podsieci mogą się pingować?

Zapisz gdzieś iptables by móc go przywrócić i spróbuj wyczyścić wszystkie tablice po czym ping wp.pl z podsieci.

Spróbuj oczywiście przed Tym wpisać

Kod: Zaznacz cały

iptables -t nat -A POSTROUTING -j MASQUERADE
natomiast
Posty: 25
Rejestracja: 17 kwietnia 2009, 12:05

Post autor: natomiast »

Cyphermen pisze:Pytanie, czy podsieć dostaje neta z dhcp czy manualna konfiguracja?
Na Debianie jest serwer Dhcp3. Sprawdzałem i działa. Przydziela adresy bez problemu.
Przepraszam ale co ma do tego serwer Dhcp? Problem polega na tym, że:
eth0 -> zewnętrzne ip, eth1 -> ip_podsieci wew.
pakiety nie są przekazywane z interfejsu eth1 do eth2 i na odwrót.
Pozdrawiam
Cyphermen
Beginner
Posty: 426
Rejestracja: 24 maja 2009, 10:56
Lokalizacja: cze-wa

Post autor: Cyphermen »

Zrób tak jak napisałem wyżej. Może coś pomoże a jeśli nie to może to uszkodzenie mechaniczne na sprzęcie? Aha ustaw wszystkie polityki na ACCEPT.

Możesz spróbować jeszcze wyłączyć dhcp i ustawić interfejsy ręcznie i wtedy zobaczyć czy działa. zawsze wykluczysz pewne rzeczy.
natomiast
Posty: 25
Rejestracja: 17 kwietnia 2009, 12:05

Post autor: natomiast »

Cyphermen pisze:Zrób tak jak napisałem wyżej. Może coś pomoże a jeśli nie to może to uszkodzenie mechaniczne na sprzęcie? Aha ustaw wszystkie polityki na ACCEPT.

Możesz spróbować jeszcze wyłączyć dhcp i ustawić interfejsy ręcznie i wtedy zobaczyć czy działa. zawsze wykluczysz pewne rzeczy.
Na Debianie wszystkie interfejsy są skonfigurowane ręcznie. Klienci z podsieci 172.16.0.0 korzystają z Dhcp-a na Debianie do uzyskiwania adresów.
Cyphermen
Beginner
Posty: 426
Rejestracja: 24 maja 2009, 10:56
Lokalizacja: cze-wa

Post autor: Cyphermen »

No to tak jak napisałem postaraj się bez firewalla cokolwiek zrobić wtedy będzie wiadome ze to nie jego wina...

i ustaw na clientach podsieci 172.x.x.x chociażby na jednym ręcznie wszystkie parametry( adres ip maska, default gw) i wtedy zobacz czy cokolwiek działa..

Nie wiem czy to coś pomoże ale możesz jeszcze zamiast przekazywania pakietów tak jak ty masz, wpisać

Kod: Zaznacz cały

echo 1 > /proc/sys/net/ipv4/ip_forward

Ale nie wiem czy to robi różnice

Sprawdź czy interfejs jest na up po stronie serwera i klienta
natomiast
Posty: 25
Rejestracja: 17 kwietnia 2009, 12:05

Post autor: natomiast »

Dziękuję Cyphermen. Rzeczywiście ustawienie łańcuchów iptables na ACCEPT wyjaśniło sprawe. Trzeba będzie się jeszcze nieco douczyć na ten temat. Ale podobno pierwszy raz zawsze boli?
Cyphermen
Beginner
Posty: 426
Rejestracja: 24 maja 2009, 10:56
Lokalizacja: cze-wa

Post autor: Cyphermen »

Nie ma za co tylko jeden mankament masz teraz. Jeśli ustawiłeś wszystko na ,,accept'' to tak naprawdę teoretycznie nie masz firewalla. Bo nic nie jest zablokowane chyba ze blokujesz coś w którejś regułce. Przejrzyj wszystkie reguły dokładnie ja to zrobię później to może na coś trafię.

Daj ,,INPUT'' na ,,drop'' z tym że może znowu nie chodzić ci internet. To znaczy że wina leży, w którejś regułce firewalla.

Mam nadzieję że tu jeszcze zajrzysz.

[Dodano: 2009-07-01, 18:27]
Według mnie trochę masz namieszane w IPTABLES ale ja nie jestem jakims specem. Przeczytaj jednak dokładnie to co napisałem w tym poście bo naprawdę teraz teoretycznie nie masz firewalla.
ODPOWIEDZ