Może pingować, ale nie może się połączyć (curl, wget, apt-get itp.) (Serwer rasberry pi)

7

Tło: Próbuję skonfigurować serwer rasberry pi. Wszystko szło dobrze i moja pi mogła apt-get update itp., Dopóki nie dostałem przekierowania portów do pracy i ssh do pracy poza siecią LAN. Próbowałem również otworzyć stronę internetową, więc utworzyłem port przekierowania dla portu innego niż 80, ponieważ mój dostawca usług internetowych go blokował.

Problem: Po uzyskaniu dostępu do pi przez ssh poza LAN, nie mogłem użyć apt-get ani uzyskać połączenia z stronami internetowymi z moim pi. Ping nadal działa dobrze.

Co próbowałem: Wypróbowałem wiele różnych konfiguracji iptables, a także całkowicie go opróżniłem i kilkakrotnie zacząłem od konfiguracji sugerowanych przez ludzi. Nic z tego nie działa. W tej chwili iptables są całkowicie opróżnione.

Oto przykładowe wyniki pingów i wget / loków:

pi@raspberrypi:~$ sudo apt-get update
0% [Connecting to mirrordirector.raspbian.org (5.153.225.207)] [Connecting to w^Cpi@raspberrypi:~$ wget -q -O- google.com
^C
pi@raspberrypi:~$ ping google.com
PING google.com (74.125.224.98) 56(84) bytes of data.
64 bytes from lax02s19-in-f2.1e100.net (74.125.224.98): icmp_req=1 ttl=52 time=58.8 ms
64 bytes from lax02s19-in-f2.1e100.net (74.125.224.98): icmp_req=2 ttl=52 time=53.8 ms
64 bytes from lax02s19-in-f2.1e100.net (74.125.224.98): icmp_req=3 ttl=52 time=62.2 ms
64 bytes from lax02s19-in-f2.1e100.net (74.125.224.98): icmp_req=4 ttl=52 time=71.2 ms
64 bytes from lax02s19-in-f2.1e100.net (74.125.224.98): icmp_req=5 ttl=52 time=67.3 ms
^C
--- google.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 53.846/62.705/71.224/6.137 ms
pi@raspberrypi:~$

Muszę ctrl-c z zadań oczywiście, ponieważ się zawieszają, ale to jest wynik.

Czy ktoś wie, jaki inny problem może to powodować?

EDYTOWAĆ

Odkryłem, że problem polegał na tym, że mój adres IP został dodany do portu blokującego mój router, więc jeśli masz podobne problemy, sprawdź, czy nawet jeśli nie wierzysz, że go dotknąłeś.

gonić
źródło
jeśli pingujesz adres publiczny systemu, który wykonuje przekierowanie portów, pingujesz router, a nie serwer. pingujesz serwer z jego lub poza LAN? Zainstalowałbym również UFW i upewniłem się, że jest skonfigurowany tak, aby zezwalał na połączenia wychodzące i przychodzące odpowiedzi. iptables jest potężny, ale często niepotrzebnie skomplikowany.
Frank Thomas
Próbuję pingować adresy poza moją siecią LAN z mojego serwera. Chciałbym, aby serwer miał możliwość łączenia się z Internetem i pobierania plików w razie potrzeby, dzięki czemu mogę ssh do niego i pracować lub dodawać rzeczy w razie potrzeby.
ścigam
OK, teraz wydaje się to dość mylące. Więc masz swój komputer (nazwij go rp) za routerem i przekazałeś ssh i http na powiedzmy 8080 porcie do twojego rp na routerze, a po tym twój rp nie może pingować Google ani pobierać plików z Internetu?
Mahdi
Prawie - wszystko, co powiedziałeś, poza tym, że może pingować, po prostu nie pobieraj.
ścigam
opublikuj iptables swojego pi oraz konfigurację routera.
gogators

Odpowiedzi:

5

Wygląda to na problem z wyszukiwaniem DNS. Czy możesz przetestować coś takiego:

nslookup www.google.com

Jeśli odpowiada adresem IP, oznacza to, że Twój DNS działa, w przeciwnym razie musisz najpierw rozwiązać problem z DNS, edytując go tak, /etc/resolv.confaby zawierał:

nameserver 8.8.4.4

Mahdi
źródło
najwyraźniej nie mam nslookup jako polecenia, ale do pliku dodałem serwer nazw 8.8.8.8 i serwer nazw 8.8.4.4, a problem nadal występuje. Nie miałem tych wartości już w pliku, to były trzy inne adresy IP, które moim zdaniem były podstawowym WAN DNS, wtórnym WAN DNS i trzecim WAN DNS.
ścigam
Zauważyłem, że po ponownym uruchomieniu resolv.confpliku plik zawiera tylko trzy wpisy i usuwa wpisy 8.8.8.8 i 8.8.4.4 ... Nie wiem, czy powinien to zrobić, ale nie sądzę, że to normalne .
gonić
Przepraszam, zapomniałem wspomnieć, że po edycji tego pliku musisz ponownie uruchomić usługi sieciowe. Czy ręcznie ustawiasz adres IP, czy pochodzi on z DHCP (automatycznie)?
Mahdi
Czy podczas pingowania hosta (np. ping www.google.com) Otrzymasz adres IP i czy to się udaje? BTW, możesz uzyskać nslookup, instalując pakiet dnsutils:sudo apt-get install dnsutils
Mahdi
Moje ip jest ustawiane dynamicznie. Próbowałem zrestartować usługi sieciowe po dodaniu serwerów nazw, ale wciąż nic mi nie daje w poleceniach curl lub wget i zawiesza się0% [Connecting to mirrordirector.rasbpian.org ]
chase