Obsah

Sdílení internetového připojení

Tento návod je určen pro starší vydání <ubu> Ubuntu. Návod pro nové verze čtěte zde.

Tento návod vám pomůže ve sdílení internetového připojení ostatním počítačům na místní síti.

Univerzální postup s využitím CLI nástrojů

Nastavení serveru

Budeme potřebovat dvě síťové karty (jednu pro připojení k internetu, druhou pro připojení k vlastní síti), nebo jednu síťovou kartu a rozhraní PPP (které zprostředkovává připojení k internetu). Jedna síťová karta je připojena k vaší vlastní síti, nazveme ji eth0. Druhá karta, či PPP rozhraní, které je připojeno k internetu nazveme eth1 či ppp0. Předpoklad pro úspěšné sdílení je, že počítač má v síti přidělenou vlastní ipadresu. Což lze ověřit pomocí příkazu ip address show, či pomocí network manageru vpravo nahoře na liště.

 sudo iptables -A FORWARD -i eth1 -o eth0 -s 192.168.0.0/24 -m state --state NEW -j ACCEPT
 sudo iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
 sudo iptables -A POSTROUTING -t nat -j MASQUERADE
sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

Nastavení klienta

sudo /etc/init.d/networking stop
sudo ip address add <ip> dev eth<x>

eth<x> nahradíme označením rozhraní na kterém se síť nachází, <ip> nahradíme adresou, např 192.168.0.2

sudo route add default gw <ip>

kde <ip> je IP adresa serveru, například 192.168.0.1

gksudo gedit /etc/resolv.conf

Přidáme na konec souboru:

nameserver <ip>

<ip> nahradíme IP adresou serveru, například 192.168.0.1

Aktivace sdílení při každém startu počítače

Chcete-li mít zapnuté sdílení internetu do sítě po každém startu PC, je nutné zadávat výše zmíněné příkazy pokaždé když spustíte Váš počítač. Nejsnažší cestou automatizace tohoto procesu je zapsat požadavek do souboru rc.local .

gksudo gedit /etc/rc.local
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

##připojení k internetu
pppd &

##sdílení připojení
iptables -A FORWARD -i eth1 -o eth0 -s 192.168.0.0/24 -m state --state NEW -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A POSTROUTING -t nat -j MASQUERADE
sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

exit 0

—- Chcete-li poskytovat připojení na počítač s operačním systémem Windows, nastavte IP adresu serveru (192.168.0.1) ve Windows ve správci sítí v položce Výchozí Brána

DHCP server

Velmi pěkný návod jak vše nastavit, sice v AJ, ale se základní znalostí to nastaví každý. zde

GUI NetworkManageru

Nastavení serveru

Novější verze Network Manageru (0.7+, tzn. *buntu 8.10+, případně i 8.04 s tímto repozitářem) dovedou totéž zařídit automaticky a to včetně DHCP serveru. Postup je následující:

  1. vytvořte nový profil u rozhraní, které chcete použít ke sdílení připojení k internetu ostatním (buď drátěnou nebo bezdrátovou síťovku)
  2. v nastavení IPv4 přepněte na „sdíleno ostatním počítačům“ a pokud nevíte co děláte, všechno ostatní klidně ignorujte
  3. potvrďte nastavení nového síťového profilu a zavřete dialog s nastavením Network Manageru
  4. použijte nově vytvořený profil na dané rozhraní

Pokud profil na daném rozhraní drží, aniž by se během chvíle zase odpojil, je vše v pořádku; pokud ne, zkuste přeinstalovat balíček dnsmasq-base a případně aktualizovat Network Manager ze zmíněného repozitáře.

Nastavení klienta

Stačí použít libovolný síťový profil, který dané síťové rozhraní konfiguruje automaticky pomocí DHCP.

Aktivace sdílení při každém startu počítače

Stačí kromě zmíněného nastavení IPv4 také povolit automatické použití vytvořeného síťového profilu na dané síťové rozhraní (zatrhněte „připojovat automaticky“) a případně nastavit profil jako globální (zatrhněte „pro všechny uživatele“), aby se připojení sdílelo i když není na „serveru“ nikdo přihlášen.

DHCP server

Nemusíte nic řešit, tohle si Network Manager zařídí sám pomocí dnsmasq z balíčku dnsmasq-base, který je součástí základní instalace.