Nie może uzyskać dostępu do wybranych stron internetowych w systemie Linux (ale może w systemie Windows)

10

Moje połączenie internetowe było kiedyś bezpośrednim połączeniem LAN z moim dostawcą. Wtedy wszystko ładowałoby się dobrze zarówno w systemie Windows, jak i Ubuntu (podwójny rozruch). Jednak jakiś czas temu zaczęli wymagać ode mnie wybierania przy użyciu nazwy użytkownika i hasła (przez połączenie PPPoE). Ale od tego czasu nie byłem w stanie przeglądać niektórych stron internetowych na Ubuntu, nawet jeśli nie było takich problemów w systemie Windows. Niektóre przykładowe strony internetowe to - strona logowania Ovi (chociaż share.ovi.com ładuje się dobrze, a nokia.com ładuje się dobrze), Live Mail (działa na Chrome (ium) i Opera, ale nie na Firefox (zarówno 3.6, jak i 4)) i inne losowe strony internetowe.

Niektóre witryny, które nie ładują się, pokazują komunikaty o przekroczeniu limitu czasu w przeglądarce Chrome, a w przypadku niektórych witryn przeglądarka będzie próbowała ładować się bez końca (zostawiłem to nawet przez godziny, ale nie zauważyłem, że dzieje się inaczej).

Próbowałem zmienić serwery DNS na te sugerowane w komentarzu. Próbowałem nawet uruchomić komputer z LiveCD Fedory, a następnie zmienić DNS na te (a nawet na OpenDNS), ale dzieje się dokładnie to samo.

Oto dane wyjściowe ipconfig w systemie Windows:

alternatywny tekst

Jeśli to jakaś pomoc, komunikaty o błędach w Operze wydają się nieco bardziej pouczające i mają kolejno następujące błędy:

  • Bezpieczne połączenie: błąd krytyczny (552)
  • Bezpieczne połączenie: błąd krytyczny (40)

Następnie: Opera nie mogła połączyć się z serwerem. Serwer może używać nieobsługiwanego protokołu SSL 2, który nie jest uważany za wystarczająco bezpieczny dla bezpiecznej komunikacji. Właściciel witryny powinien dokonać aktualizacji do TLS 1.0 lub nowszej.

Czy ktoś wie, dlaczego tak się dzieje i jak to naprawić?

Aktualizacja: właśnie zobaczyłem tutaj http://ubuntuforums.org/showthread.php?t=1571086&highlight=ppoe, że ktoś miał podobny problem i rozwiązał go, umieszczając plik NetworkManager.conf w / etc / NetworkManager. Co musi być w tym pliku?

Poranek
źródło
Zastanawiam się, czy używane przez ciebie serwery DNS nie są zbyt dobre. Czy możesz spróbować ręcznie skonfigurować serwery DNS do czegoś takiego jak 4.2.2.2 lub 8.8.8.8 i sprawdzić, czy to pomoże.
deltaray
Nie jest jasne, która część połączenia powoduje, że wpisujesz login / hasło. Czy masz nowe połączenie w „połączeniach sieciowych”? Czy możesz podać wynik ipconfigpolecenia w systemie Windows?
Victor Sergienko,
@Victor Sergienko: Zaktualizowałem post i dodałem dane wyjściowe ipconfig.
Mussnoon
Wow, myślałem, że to połączenie VPN z prośbą o hasło, ale nie ma.
Victor Sergienko
Nie, nie VPN, ale PPPoE.
Poniedziałek

Odpowiedzi:

16

(Skopiowane z Unix Stack Exchange )

Występują objawy problemu z MTU : niektóre połączenia TCP zawieszają się, mniej więcej odtwarzalnie dla danego polecenia lub adresu URL, ale bez ogólnie dostrzegalnego wzorca. Charakterystycznym objawem jest to, że interaktywne sesje ssh działają dobrze, ale przesyłanie plików prawie zawsze kończy się niepowodzeniem. Ponadto pppoe jest głównym źródłem problemu MTU dla użytkowników domowych. Przepisuję więc czek MTU.

Co to jest? M aximum t ransmission U NIT jest maksymalny rozmiar pakietu za pośrednictwem łącza sieciowego. MTU różni się w zależności od medium transportowego, np. Przewodowy Ethernet i Wi-Fi (802.11) mają różne MTU, a łącza ATM (które stanowią większość infrastruktury dalekobieżnej) mają swoje własne MTU. PPPOE jest protokołem enkapsulowanym, co oznacza, że ​​każdy pakiet składa się z kilku bajtów nagłówka, a następnie pakietu leżącego u jego podstaw - dzięki czemu obniża maksymalny rozmiar pakietu o rozmiar nagłówka. IP pozwala routerom fragmentować pakiety, jeśli wykryją, że są za duże na następny skok, ale to nie zawsze działa. Teoretycznie należy odkryć właściwą MTUautomatycznie , ale to też nie zawsze działa. W szczególności Google sugeruje, że Network Manager nie zawsze właściwie działa na podstawie informacji MTU uzyskanych z odkrycia MTU, ale nie wiem, których wersji dotyczy problem i jakie są problematyczne przypadki użycia.

Jak to zmierzyć. Spróbuj wysłać pakiety ping o danym rozmiarze do hostów zewnętrznych, które na nie odpowiedzą, np. ping -c 1 -s 42 8.8.8.8(W systemie Linux; w innych systemach sprawdź dokumentację swojego pingpolecenia). Twoje pakiety powinny przejść przez wystarczająco małe wartości 42 (jeśli 42 nie działa, coś blokuje pingi). W przypadku większych wartości pakiet nie przejdzie. 1464 jest typową wartością maksymalną, jeśli ograniczającym elementem infrastruktury jest lokalna sieć Ethernet. Jeśli masz szczęście, gdy wyślesz zbyt duży pakiet, zobaczysz komunikat podobny do tego Frag needed and DF set (mtu = 1492). Jeśli nie masz szczęścia, po prostu eksperymentuj z wartością, aż znajdziesz wartość maksymalną, a następnie dodaj 28 ( -sokreśla rozmiar ładunku, a oprócz tego jest 28 bajtów). Zobacz teżJak zoptymalizować połączenie internetowe za pomocą MTU i RWIN na forach Ubuntu.

Jak to ustawić (zastąp 1454 ustaloną eth0przez Ciebie jednostką MTU i nazwą interfejsu sieciowego)

  • Jako jednorazowy (Linux): uruchom ifconfig eth0 mtu 1454
  • Trwale (Debian i pochodne, takie jak Ubuntu, jeśli nie używasz Network Managera): Edytuj /etc/network/interfaces. Tuż po wpisie interfejsu sieciowego (po iface eth0 …dyrektywie) dodaj wiersz z pre-up ifconfig $IFACE mtu 1454. Alternatywnie, jeśli twój adres IP jest statyczny, możesz dodać mtu 1454parametr do iface eth0 inet staticdyrektywy.
  • Trwale (Debian i pochodne, takie jak Ubuntu, z Menedżerem sieci lub bez): Utwórz skrypt wywoływany /etc/network/if-pre-up.d/mtuz następującą zawartością i uczyń go światowym plikiem wykonywalnym ( chmod a+rx):

    #!/bin/sh
    ifconfig $IFACE mtu 1454
    
Gilles „SO- przestań być zły”
źródło
2
Dlaczego to się dzieje ? Ponieważ twoje pakiety są tunelowane przez PPPOE (PPP przez sieć Ethernet), a to jest ograniczone do 1540, więc jeśli twój pakiet plus narzut tunelu jest większy, to fragmentuje. Niektóre systemy operacyjne (MS) nie dokonują ponownego składania pakietów. Więc nie możesz dotrzeć do niektórych stron (obsługiwanych przez serwery MS Windows.) [Możesz tak naprawdę ustawić MTU na 1300 i to będzie działać całkiem dobrze] To się stało w moim domu, to naprawiło.
Tim Williscroft,
1
Dziękuję bardzo! Miałem ten problem od dłuższego czasu i właśnie zrobiłem to bez odwiedzania niektórych stron. Teraz mogę w końcu kontynuować bez tego problemu.
Kevin Jalbert
Dzięki, miałem ten problem na archlinuxie po czystej instalacji, nic nie rozwiązało tego, ale twoje rozwiązanie jest po prostu świetne. Twoje zdrowie!
JeanK
Mój problem został rozwiązany z tego linku
e_soroush
0

Opuściłem domyślną konfigurację w pliku interfejsu, ale ustawiłem MTU=1300sekcję „WAN” mojego routera bezprzewodowego.

To rozwiązało problem.

Naveen
źródło
Poprawiłoby to odpowiedź, aby wyjaśnić, który plik został zmieniony i jakiej wersji systemu Linux był używany.
Kevin Panko
0

Mam ten sam problem. Niektóre strony nie mogą zostać otwarte w moim KUBUNTU 17.04. Używam tego polecenia:

echo 0 >/proc/sys/net/ipv4/tcp_timestamps
srr7
źródło
3
Czy możesz wyjaśnić, co to robi?
Arjan
0

Problem może być związany z konfiguracją DNS. Dla mnie problem rozwiązany przez wykonanie kilku kroków:

  1. Najpierw otwórz terminal.
  2. Wewnątrz uruchom sudo apt-get install resolvconf(zainstaluje resolvconfpakiet).
  3. Przejdź do /etc/resolvconf/resolv.conf.d/katalogu
  4. Otwórz plik o nazwie basez uprawnieniami administratora, uruchamiając sudo nano base.
  5. Po prostu dodaj / zmień wpisy. Ważny przykład wpisu nameserver 8.8.8.8. Wpisy muszą być oddzielone nowymi wierszami. Oto poprawny plik:
    serwer nazw 8.8.8.8
    serwer nazw 8.8.4.4
    
    Uwaga : listę nazw i adresów DNS można znaleźć tutaj .
  6. Zapisz plik i wyjdź.
  7. Uruchom sudo resolvconf -u(zaktualizuje konfigurację DNS).

Otóż ​​to! Teraz spróbuj załadować strony, które się nie załadowały, powinno działać!

MAChitgarha
źródło