Gentoo Logo

1.  Automatyczne wykrywanie sieci

Może po prostu działa?

Jeżeli komputer jest podłączony do sieci Ethernet z serwerem DHCP, jest bardzo prawdopodobne, że połączenie zostało skonfigurowane automatycznie. Dzięki temu od razu można skorzystać z wielu narzędzi sieciowych dostępnych na płycie instalacyjnej, takich jak ssh, scp, ping, irssi, wget czy links.

Jeśli sieć jest skonfigurowana prawidłowo, polecenie /sbin/ifconfig powinno wyświetlić oprócz lo także inne urządzenia, na przykład eth0:

Listing 1.1: Wynik /sbin/ifconfig przy poprawnej konfiguracji sieci

# /sbin/ifconfig
(...)
eth0      Link encap:Ethernet  HWaddr 00:50:BA:8F:61:7A
          inet addr:192.168.0.2  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::50:ba8f:617a/10 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1498792 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1284980 errors:0 dropped:0 overruns:0 carrier:0
          collisions:1984 txqueuelen:100
          RX bytes:485691215 (463.1 Mb)  TX bytes:123951388 (118.2 Mb)
          Interrupt:11 Base address:0xe800

Opcjonalnie: Konfigurowanie proxy

Jeśli korzystamy z proxy, musimy skonfigurować je w czasie instalacji. Jest to bardzo proste, wystarczy zdefiniować odpowiednią zmienną, zawierającą informacje o serwerze proxy.

W większości przypadków można zdefiniować tę zmienną przy pomocy jego domeny. Pokażemy to na przykładzie serwera proxy.gentoo.org i portu 8080.

Listing 1.1: Definiowanie serwerów proxy

(Jeśli proxy filtruje HTTP)
# export http_proxy="http://proxy.gentoo.org:8080"
(Jeśli proxy filtruje FTP)
# export ftp_proxy="ftp://proxy.gentoo.org:8080"
(Jeśli proxy filtruje RSYNC)
# export RSYNC_PROXY="rsync://proxy.gentoo.org:8080"

Jeżeli proxy wymaga podania hasła i nazwy użytkownika, należy użyć następującej składni:

Listing 1.1: Dodawanie nazwy i hasła użytkownika do zmiennej

http://username:password@proxy.gentoo.org:8080

Testowanie sieci

Jeśli chcemy się upewnić, że pakiety dochodzą do celu, możemy spróbować pingowania któregoś z serwerów DNS (z pliku /etc/resolv.conf) lub dowolnie wybranej strony WWW.

Listing 1.1: Testowanie sieci

# ping -c 3 www.gentoo.org

Działa? Jeśli tak, można pominąć resztę tego rozdziału i bezpośrednio przejść do (przygotowania dysków). Jeśli nie, trzeba będzie zapoznać się z dalszą częścią tego tekstu.

1.  Automatyczne konfigurowanie sieci

Niektóre media instalacyjne pozwalają na skorzystanie z narzędzia net-setup (dla typowych lub bezprzewodowych sieci) jeśli sieć nie zadziała od razu, pppoe-setup (dla użytkowników ASDL) albo pptp (dla użytkowników PPTP - dostępne tylko dla architektury x86, amd64, alpha, ppc oraz ppc64).

W przypadku gdy nośnik instalacyjny nie zawiera żadnego z wymienionych narzędzi lub sieć wciąż nie funkcjonuje prawidłowo, należy przejść do akapitu Ręczna konfiguracja sieci.

Domyślnie: Używanie net-setup

Najprostszą metodą konfigurowania sieci (poza automatyczną) jest skorzystanie ze skryptu net-setup:

Listing 1.1: Uruchamianie skryptu net-setup

# net-setup eth0

Następnie należy udzielić odpowiedzi na serię dotyczących różnych parametrów sieci. Po zakończeniu wszystko powinno być skonfigurowane. Sprawdzamy połączenie tak jak opisano to wyżej. Jeśli wszystko działa, pora zacząć instalację Gentoo. Można pominąć resztę tego rozdziału i przejść od razu do (przygotowywania dysków).

Jeśli sieć wciąż nie działa, przechodzimy do ręcznej konfiguracji sieci.

Alternatywnie: Używanie RP-PPPoE

Jeśli do połączenia z Internetem potrzebne jest PPPoE, należy skorzystać z programu ppp nagranego na naszej płycie instalacyjnej. Skrypt pppoe-setup służy do konfiguracji połączenia. Zostaniemy zapytani o urządzenie sieciowe podłączone do modemu adsl, nazwę użytkownika i hasło oraz o IP serwerów DNS i o to czy potrzebujemy podstawowego firewalla.

Listing 1.1: Używanie ppp

# pppoe-setup
# pppoe-start

Jeśli coś pójdzie nie tak, należy sprawdzić czy w /etc/ppp/pap-secrets lub /etc/ppp/chap-secrets podano prawidłową nazwę użytkownika i hasło oraz upewnić się, że wybrano właściwe urządzenie sieciowe. Jeśli nie zostało ono wykryte, konieczne będzie ręczne załadowanie odpowiednich sterowników. W takim wypadku należy przejść do ręcznej konfiguracji sieci, gdzie szerzej to omówimy.

Jeżeli wszystko zadziałało przechodzimy do (przygotowania dysków).

Alternatywnie: Używanie PPTP

Jeśli potrzebna jest obsługa PPTP, należy skorzystać z pptpclient zamieszczonego na płycie instalacyjnej. Najpierw jednak należy dodać prawidłową nazwę użytkownika i hasło do /etc/ppp/pap-secrets lub /etc/ppp/chap-secrets:

Listing 1.1: Edytowanie /etc/ppp/chap-secrets

# nano -w /etc/ppp/chap-secrets

Następnie konfigurujemy /etc/ppp/options.pptp:

Listing 1.1: Edytowanie /etc/ppp/options.pptp

# nano -w /etc/ppp/options.pptp

Po zakończeniu uruchamiamy program pptp (razem z niemożliwymi do ustawienia w options.pptp opcjami), aby połączyć się z serwerem:

Listing 1.1: Łączenie z serwerem dial-in

# pptp <server ip>

Kolejny etap instalacji to (przygotowywanie dysków).

1.  Ręczne konfigurowanie sieci

Ładowanie odpowiednich modułów sieciowych

W czasie uruchamiania płyty instalacyjnej system spróbuje wykryć sprzęt i załadować odpowiednie sterowniki. W większości przypadków wykrywanie przebiega prawidłowo, czasem jednak trzeba ręcznie skorygować niektóre ustawienia.

Jeśli zawiódł net-setup lub pppoe-setup, możliwe, że nie została wykryta karta sieciowa. Oznacza to, że trzeba będzie ręcznie załadować odpowiedni sterownik.

Do wyświetlenia listy modułów kernela ze sterownikami dla urządzeń sieciowych używamy polecenia ls:

Listing 1.1: Szukanie modułów

# ls /lib/modules/`uname -r`/kernel/drivers/net

Gdy znajdziemy odpowiedni sterownik dla karty sieciowej, ładujemy go przy pomocy polecenia modprobe:

Listing 1.1: Ładowanie modułów kernela za pmocą modprobe

(W przykładzie załadujemy moduł pcnet32)
# modprobe pcnet32

Aby sprawdzić czy karta sieciowa została wykryta, korzystamy z polecenia ifconfig. Prawidłowy rezultat powinien wyglądać mniej więcej tak:

Listing 1.1: Sprawdzanie dostępności karty sieciowej. Wynik pozytywny

# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr FE:FD:00:00:00:00
          BROADCAST NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

Następujący błąd oznacza, że karta nie została wykryta:

Listing 1.1: Sprawdzanie dostępności karty sieciowej. Wynik negatywny

# ifconfig eth0
eth0: error fetching interface information: Device not found

Jeżeli w komputerze znajduje się kilka kart sieciowych, będą one miały nazwy (kolejno) eth0, eth1, itp. Należy się upewnić czy karta sieciowa, której chcemy używać działa poprawnie i pamiętać o używaniu poprawnego nazewnictwa przy wykonywaniu czynności opisanych w dalszej części tego dokumentu. W tym Podręczniku zakładamy, że karta sieciowa nazywa się eth0.

Jeśli karta jest już prawidłowo rozpoznawana przez system, można ponownie użyć programów net-setup lub pppoe-setup (tym razem powinny zadziałać) lub skorzystać z poniższych instrukcji, aby połączenie skonfigurować ręcznie.

Następnie przechodzimy do jednej z następujących części:

Używanie DHCP

DHCP (Dynamic Host Configuration Protocol) umożliwia automatyczne otrzymywanie informacji o parametrach sieci (adresu IP, maski sieciowej, adresów broadcast, bramy, serwerów nazw, etc.). Niestety z metody tej można skorzystać tylko wtedy, gdy w sieci działa serwer DHCP (lub gdy ISP udostępnia taką usługę). Jeśli tak jest, można automatycznie skonfigurować połączenie przy pomocy dhcpd:

Listing 1.1: Używanie dhcpcd

# dhcpcd eth0
Część administratorów wymaga
nazwy hosta i domeny dostarczanej przez serwer DHCP
W tym przypadku używamy
# dhcpcd -HD eth0

Jeśli to zadziała (sprawdzamy pingując jakiś serwis internetowy, np. Google), wszystko jest gotowe i można pominąć resztę tego rozdziału i przejść bezpośrednio do (przygotowywania dysków).

Przygotowanie bezprzewodowego dostępu

Uwaga: Program iwconfig dostępny jest wyłącznie na płytach instalacyjnych dla architektur x86, amd64 oraz ppc. Opis instalacji dla pozostałych płyt znajduje się na stronach projektu linux-wlan-ng.

Jeśli używamy karty bezprzewodowej (802.11), musimy ją odpowiednio skonfigurować. Aby poznać aktualne ustawienia skorzystamy z polecenia iwconfig. Rezultat wygląda zwykle tak:

Listing 1.1: Wyświetlanie aktualnych ustawień interfejsów kart do połączeń bezprzewodowych

# iwconfig eth0
eth0      IEEE 802.11-DS  ESSID:"GentooNode"
          Mode:Managed  Frequency:2.442GHz  Access Point: 00:09:5B:11:CC:F2
          Bit Rate:11Mb/s   Tx-Power=20 dBm   Sensitivity=0/65535
          Retry limit:16   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality:25/10  Signal level:-51 dBm  Noise level:-102 dBm
          Rx invalid nwid:5901 Rx invalid crypt:0 Rx invalid frag:0 Tx
          excessive retries:237 Invalid misc:350282 Missed beacon:84

Uwaga: Nazwa urządzenia karty bezprzewodowej to wlan0 zamiast eth0. Uruchomienie polecenia iwconfig bez dodatkowych parametrów pozwoli na poznanie nazwy odpowiedniego urządzenia.

W większości przypadków wystarcza zmodyfikowanie tylko dwóch opcji: ESSID (czyli nazwy sieci bezprzewodowej) oraz klucza WEP. Jeśli wyświetlone ESSID i Access Point są prawidłowe dla punktu dostępu i nie korzystamy z WEP, połączenie już działa. Aby zmodyfikować ESSID lub dodać klucz WEP, skorzystamy z następujących poleceń:

Uwaga: Jeśli nasza sieć bezprzewodowa zabezpieczona jest kluczem WPA lub WPA2 będziemy musieli użyć programu wpa_supplicant. Więcej informacji na ten temat znajdziemy w rozdziale (Konfiguracja sieci bezprzewodowej) podręcznika Gentoo Linux.

Listing 1.1: Modyfikowanie ESSID i/lub dodawanie klucza WEP

(Polecenie zmieniające nazwę sieci na "GentooNode")
# iwconfig eth0 essid GentooNode

(Polecenie ustawiające heksadecymalny klucz WEP)
# iwconfig eth0 key 1234123412341234abcd

(Polecenie ustawiające klucz ASCII - poprzedzony "s:")
# iwconfig eth0 key s:some-password

Można zatwierdzić te ustawienia ponownie wykonując iwconfig. Jeżeli sieć już działa, należy przejść do konfiguracji opcji na poziomie IP, opisanych w kolejnym paragrafie, zatytułowanym (Terminologia sieciowa) lub wykorzystać omówiony wcześniej program net-setup.

Terminologia sieciowa

Uwaga: Znając adres IP, broadcast, maskę sieciową i serwery nazw, można pominąć tę część i od razu przejść do Używania ifconfig i route.

Jeżeli wszystkie powyższe zabiegi zawiodły, można jeszcze ręcznie skonfigurować sieć. Nie jest to bardzo trudne. Opiszemy najpierw różne parametry sieci, których znajomość jest konieczna. Opowiemy także o tym czym jest brama, do czego służy maska sieciowa, jak ustala się adres broadcast i do czego potrzebne są serwery nazw.

Komputery w sieci są identyfikowane na podstawie adresów IP (Internet Protocol address). Każdy z nich jest kombinacją czterech liczb od 0 do 255. Cóż, przynajmniej my tak to widzimy. W rzeczywistości jest to ciąg 32 bitów (zer i jedynek). Pokażemy to na przykładzie:

Listing 1.1: Przykład adresu IP

Adres IP (liczby):   192.168.0.2
Adres IP (bity):     11000000 10101000 00000000 00000010
                     -------- -------- -------- --------
                        192      168       0        2

Adres IP musi być unikalny dla każdego komputera, przynajmniej w obrębie jednej sieci. Aby oddzielić maszyny w sieci i poza nią, IP podzielono na dwie części: część sieci oraz część hosta.

Podział zapisany jest za pomocą maski sieciowej, czyli zbioru zer poprzedzonego zbiorem jedynek. Ta część adresu, którą można odwzorować w jedynkach jest częścią sieci, reszta to część hosta. Zazwyczaj maskę zapisujemy jak zwykły adres IP.

Listing 1.1: Przykład oddzielenia sieci/hosta

Adres IP:     192      168      0         2
            11000000 10101000 00000000 00000010
Maska:      11111111 11111111 11111111 00000000
               255      255     255        0
           +--------------------------+--------+
                       Sieć              Host

Innymi słowy, 192.168.0.14 wciąż jest częścią naszej przykładowej sieci, ale 192.168.1.2 już nie.

Adres broadcast składa się z części sieci takiej samej jak reszta komputerów oraz samych jedynek w części hosta. Każdy komputer nasłuchuje jego adresu IP, gdyż służy on do nadawania pakietów rozgłaszających.

Listing 1.1: Adres broadcast

Adres IP:      192      168      0         2
            11000000 10101000 00000000 00000010
Broadcast:  11000000 10101000 00000000 11111111
               192      168      0        255
           +--------------------------+--------+
                      Sieć               Host

Aby "surfować" po Internecie, trzeba wiedzieć, który komputer udostępnia z nim połączenie. Komputer ten nazywamy bramą. To zwykły komputer ze zwyczajnym adresem IP (np. 172.168.0.1).

Wcześniej napisaliśmy, że każdy komputer ma własny adres IP. Aby móc się z nim połączyć za pomocą nazwy, potrzebna jest usługa tłumacząca domeny (czyli na przykład dev.gentoo.org) na adresy IP (np. 64.5.62.82). Nazywa się ona serwerem nazw. Aby z niej skorzystać dodajemy ją do pliku /etc/resolv.conf.

Czasami brama może służyć również jako serwer nazw. Jeśli nie, to trzeba wpisać adresy DNS-ów dostarczanych przez ISP.

Podsumowując: potrzebne są następujące informacje:

Parametr Przykład
Adres IP 192.168.0.2
Maska 255.255.255.0
Broadcast 192.168.0.255
Brama 192.168.0.1
Serwer(y) nazw 195.130.130.5, 195.130.130.133

Używanie ifconfig i route

Konfiguracja sieci składa się z trzech etapów. Najpierw przypisujemy sobie adres IP za pomocą ifconfig. Potem konfigurujemy bramę programem route. Na końcu wpisujemy adresy serwerów nazw do /etc/resolv.conf.

Aby przypisać komputerowi adres IP, należy oprócz niego znać również broadcast i maskę. Następnie wykonuje się następujące polecenie, zastępując wpisy ${IP_ADDR} swoim IP, ${BROADCAST} adresem broadcast i ${NETMASK} maską:

Listing 1.1: Używanie ifconfig

# ifconfig eth0 ${IP_ADDR} broadcast ${BROADCAST} netmask ${NETMASK} up

Bramę ustawiamy poleceniem route. Wpis ${GATEWAY} należy zastąpić jej adresem IP:

Listing 1.1: Używanie route

# route add default gw ${GATEWAY}

Następnie otwieramy swoim ulubionym edytorem (w przykładzie skorzystamy z nano) plik /etc/resolv.conf:

Listing 1.1: Tworzenie /etc/resolv.conf

# nano -w /etc/resolv.conf

I wypełniamy go jak w przykładzie. Zamieniamy przy tym ${NAMESERVER1} oraz ${NAMESERVER2} adresami serwerów nazw:

Listing 1.1: Przykładowy /etc/resolv.conf

nameserver ${NAMESERVER1}
nameserver ${NAMESERVER2}

Na koniec testujemy sieć pingując jakiś serwer internetowy (na przykład Google). Jeśli wszystko działa, można rozpocząć instalację Gentoo, rozpoczynając od (Przygotowywania dysków).

Zaktualizowano 26 września 2008

Podsumowanie: Aby mieć możliwość ściągnięcia z Internetu najnowszych źródeł programów, należy najpierw skonfigurować połączenie sieciowe.

Donate to support our development efforts.

Copyright 2001-2012 Gentoo Foundation, Inc. Questions, Comments? Contact us.