GNU/Linux >> Znalost Linux >  >> Linux

Nemohu přistupovat k vybraným webům v systému Linux (ale v systému Windows ano)

(Zkopírováno z Unix Stack Exchange)

Máte příznaky MTU problém:některá TCP spojení zamrznou, více či méně reprodukovatelně pro daný příkaz nebo URL, ale bez snadno rozpoznatelného celkového vzoru. Výmluvným příznakem je, že interaktivní relace ssh fungují dobře, ale přenos souborů téměř vždy selže. Kromě toho je pppoe hlavním nositelem problému MTU pro domácí uživatele. Takže předepisuji kontrolu MTU.

Co to je? m axim t výkupné u nit je maximální velikost paketu přes síťové spojení. MTU se liší od transportního média k transportnímu médiu, např. kabelový Ethernet a wifi (802.11) mají různé MTU a linky ATM (které tvoří většinu infrastruktury na dlouhé vzdálenosti) mají každá svou vlastní MTU. PPPOE je zapouzdřený protokol, což znamená, že každý paket se skládá z několika bajtů hlavičky následovaný základním paketem — takže snižuje maximální velikost paketu o velikost hlavičky. IP umožňuje směrovačům fragmentovat pakety, pokud zjistí, že jsou příliš velké pro další skok, ale ne vždy to funguje. Teoreticky by měla být správná MTU objevena automaticky, ale také to vždy nefunguje. Zejména googlování naznačuje, že Network Manager ne vždy správně jedná na základě informací o MTU získaných při zjišťování MTU, ale nevím, které verze jsou ovlivněny nebo jaké jsou problematické případy použití.

Jak to měřit. Zkuste odeslat pakety ping dané velikosti externím hostitelům, kteří na ně odpoví, např. ping -c 1 -s 42 8.8.8.8 (na Linuxu; na jiných systémech vyhledejte dokumentaci ke svému ping příkaz). Vaše pakety by měly projít pro dostatečně malé hodnoty 42 (pokud 42 nefunguje, něco blokuje pingy.). U větších hodnot paket neprojde. 1464 je typická maximální hodnota, pokud je omezující částí infrastruktury vaše místní síť Ethernet. Pokud budete mít štěstí, když odešlete příliš velký paket, zobrazí se zpráva jako Frag needed and DF set (mtu = 1492) . Pokud nebudete mít štěstí, pokračujte v experimentování s hodnotou, dokud nezjistíte, jaké je maximum, a pak přidejte 28 (-s určuje velikost užitečného zatížení a kromě toho je k dispozici 28 bajtů záhlaví). Viz také Jak optimalizovat připojení k internetu pomocí MTU a RWIN na fórech Ubuntu.

Jak to nastavit (nahraďte 1454 hodnotou MTU, kterou jste určili, a eth0 podle názvu vašeho síťového rozhraní)

  • Jako jednorázové (Linux):spusťte ifconfig eth0 mtu 1454
  • Trvale (Debian a odvozeniny, jako je Ubuntu, pokud nepoužíváte Správce sítě):Upravit /etc/network/interfaces . Hned za záznam pro vaše síťové rozhraní (za iface eth0 … direktiva), přidejte řádek s pre-up ifconfig $IFACE mtu 1454 . Případně, pokud je vaše IP adresa statická, můžete přidat mtu 1454 parametr na iface eth0 inet static směrnice.
  • Trvale (Debian a odvozeniny, jako je Ubuntu, s nebo bez Správce sítě):Vytvořte skript s názvem /etc/network/if-pre-up.d/mtu s následujícím obsahem a učinit jej světově spustitelným (chmod a+rx ):

    #!/bin/sh
    ifconfig $IFACE mtu 1454
    

Linux
  1. Linux – Blokovat síťový přístup procesu?

  2. Linux OS Service ‚síť‘

  3. Jak získat přístup ke sdílené složce Windows z Linuxu?

  1. Jak získat přístup k souborovým systémům Linux ve Windows 10 a WSL 2

  2. Jak mohu zakázat přístup k internetu pro programy spuštěné ve Wine?

  3. Host Oracle Linux 6.1 na Virtualboxu 4.1 se nemůže připojit k síti

  1. Nelze přistupovat k vybraným webům Https v systému Linux přes Pppoe?

  2. Mohu se připojit k počítači se systémem Windows z prostředí Linux?

  3. Jak zablokovat přístup k internetu pro určité programy v systému Linux