Podstawy konfiguracji sieci
Wpisany przez crash środa, 12 października 2005 00:15
Początkującym w systemach operacyjnych Unix - takim jak FreeBSD, często stoji na przeszkodzie konfiguracja sieci. Pewnie, proces instalacyjny mógł ustawić kartę sieciową za ciebie, ale co zrobisz w momencie chęci przeglądnięcia tych ustawień i co zrobisz jak twoja karta sieciowa przestanie pracować? Od kąd sieć jest częścią komputera, ten artykuł zademonstruje jak zweryfikować, ustawić i zoptymalizować twoje ustawienia karty sieciowej.
Weryfikacja konfiguracji interfejsu
Jeżeli migrujesz ze środowiska Microsoft, prawdopodobnie używałeś winicfg lub ipconfig /all z lini poleceń, aby zweryfikować ustwienie twojej karty sieciowej. W Unix'ie jest podobne narzedzie - ' ifconfig ' - nazwa pochodzi z języka angielkiego ' interface config '. Poprzez wprowadzenie tej komendy, zobaczysz wszystkie interfejsy sieciowe w systemie wraz z konfiguracją.
Niektóre wersje ' ifconfig ' wymagaja podania parametru ' -a ' lub ' all '. % ifconfig rl0: flags=8802 mtu 1500 options=8 ether 00:05:5d:d2:19:b7 media: Ethernet autoselect (10baseT/UTP) status: no carrier rl1: flags=8802 mtu 1500 options=8 ether 00:05:5d:d1:ff:9d media: Ethernet autoselect (10baseT/UTP) status: no carrier ed0: flags=8843 mtu 1500 inet 192.168.2.12 netmask 0xffffff00 broadcast 192.168.2.255 ether 00:50:ba:de:36:33 lo0: flags=8049 mtu 16384 inet 127.0.0.1 netmask 0xff000000 |
To co się wyświetli będzie się trochę różniło od tego co widzisz wyżej.
System ten nie ma domyślnie skonfigurowanego jądra, usunełam domyślne IPv6, gif oraz urządzenie faith z kernela, tak wiec ich nie widać wyżej.
System ten zawiera trzy fizyczne interfejsy (rl0, rl1, ed0) oraz wirtualny interfejs loopback (lo0). Różne wersje UNIX'a różnią sie w nazewenictwie interfejsów. Na przykład, Linux używa 'eth' dla kart Ethernet'owych, tak wiec pokazywał by takie nazwy jak eth0, eth1 oraz eth2. BSD używa nazw sterowników dla każdej karty NIC, pozwalając Ci odróżnić różne chipset'y i możliwości dostępne dla każdego ze sterowników. Aby zobaczyć dekomentacje dla twojego sterownika, przeczytaj 4 sekcje z manuala. Zwróć uwagę na to że nie podajesz numeru interfejsu a jedynie jego nazwe, tak wiec nie używasz ' rl0 ' tylko 'rl'.
% man 4 rl rl -- RealTek 8129/8139 Fast Ethernet device driver % man 4 ed ed -- ethernet device driver |
System posiada trzy karty, tylko ed0 jest czynna. Dwie karty RealTek nie maja podłączonego kabla, tak jak pokazuje status: ' no carrier lines '. Zatem, tylko ' ed0 ' posiada adres IP (192.168.2.12), maske podsieci (0xffffff00), i adres broadcast'owy ( 192.168.2.255 ).
Maska podsieci jest przedstawiona w wrotości HEX, jak przedstawia początkowe ' 0x '. Ta szczególna maska nie jest za trudna do przetlumaczenia do postaci decymalnej, jak pamietasz każda para znaków ' f ' (ff) jest równa 255. Tak więc, maska podsieci jest równa 255.255.255.0. Jeżeli nie znajdziesz pary numerów HEX - ff (255) lub 00 (0), użyj komendy ' bc ' lub wbudowanego kalkulatora aby przetlumaczyc te pary hexamedalne do decymedalnych. Na przyklad, jeżeli twoja maska jest taka: 0xffffe000.
% bc bc 1.06 Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc. This is free software with ABSOLUTELY NO WARRANTY. For details type `warranty'. base=16 <b>E0</b> 224 <Ctrl d> |
Pamietaj do konwersji jakichkolwiek liter zmień na <b>DUŻĄ</b> literę, albo nie dostaniesz poprawnej odpowiedzi. Wartość decymalna e0 jest 254, w tym przykładzie maska bedzie 255.255.224.0.
Weryfikacja domyślnej bramki.
Zauważ ze ifconfig podaje przydatny status, MTU, adres IP, maska podsieci, broadcast, MAC adres dla każdego interfejsu. Jednak nie podaje domyślnego adresu bramki lub serwerów DNS.Aby zobaczyć adres bramki domyślnej należy użyć polecenia <b>netstat</b>, lub netstat z przełącznikiem ' -r ' (routing) oraz ' -n ' aby nie wyłączał tranzakcji IP-nazwa:
% netstat -rn Routing tables Internet: Destination Gateway Flags Refs Use Netif Expire default 192.168.2.100 UGS 0 72664 ed0 127.0.0.1 127.0.0.1 UH 1 46 lo0 192.168.2 link#3 UC 0 0 ed0 192.168.2.12 127.0.0.1 UGHS 0 0 lo0 192.168.2.100 00:48:54:1e:2c:76 UHLW 1 0 ed0 1172 |
Uwaga: Użytkownicy Linux'a mogą również użyć komendy ' route ' aby uzyskać podobny wynik. Komenda ' route ' w systemach BSD działa trochę inaczej, wiecej szczegółów poleam ' man route ', ' netstat -rn ' działa na wszystkich systemach operacyjnych, włączając Linux'y i systemy Microsoft'u.
W swoim wyniku, zwróć uwagę na pierwszą linię zaczynającą sie od słowa ' default '. Połączenie z adresem IP jest twoją bramką domyślną. Zwróć uwagę na flagi początkowe. Literka ' U ' od Up, oraz G od Gateway. Pokazuje to ze możesz komunikować się ze swoją bramką. Jeżeli liczba w polu ' Use ' nie jest równa 0, ukazuje liczbę pakietów wysłanych do bramki.
Podsumowując, ostatnia linijka z wyniku pokazuje adres MAC twojej bramki.
Sprawdzenie ustawien DNS
W pliku /etc/resolv.conf zamieszczone są ustawienia DNS. % more resolv.conf nameserver 209.226.175.236 nameserver 204.101.251.1 nameserver 204.101.251.2 |
System ten zawiera adresy IP trzech serwerów DNS. Dobrze mieć conamjmniej 2 serwery DNS, w przypadku gdy podstawowy przestanie działać w tym momencie drugi bedzie odpowiadał.
Aby znaleść adres IP twojego serwera DNS, użyj polecenia ' dig ':
% dig ns sympatico.ca ; <<>> DiG 8.3 <<>> ns sympatico.ca ;; res options: init recurs defnam dnsrch ;; got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 44589 ;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 4 ;; QUERY SECTION: ;; sympatico.ca, type = NS, class = IN ;; ANSWER SECTION: sympatico.ca. 6h12m33s IN NS ns5.bellnexxia.net. sympatico.ca. 6h12m33s IN NS ns6.bellnexxia.net. sympatico.ca. 6h12m33s IN NS dns1.sympatico.ca. sympatico.ca. 6h12m33s IN NS dns2.sympatico.ca. ;; ADDITIONAL SECTION: ns5.bellnexxia.net. 9m36s IN A 209.226.175.236 ns6.bellnexxia.net. 9m37s IN A 209.226.175.237 dns1.sympatico.ca. 14m7s IN A 204.101.251.1 dns2.sympatico.ca. 3m56s IN A 204.101.251.2 ;; Total query time: 46 msec ;; FROM: dru.domain.org to SERVER: 209.226.175.236 ;; WHEN: Sun Apr 11 14:30:14 2004 ;; MSG SIZE sent: 30 rcvd: 182 |
Wynik twój jest podzielony na kilka sekcji ( SECTION ). Teraz skoncentruj sie na sekcji ' ANSWER SECTION ', która zawiera odpowiedź na twoje zapytanie. Mój ISP używa czterech serwerów DNS, jak widać w odpowiedzi. Każdy z nich używa rekordów IN (IPv4) i rezolucje NS. Jednakże, odpowiedź pokazuje nazwy serwerów nazw ( DNS ). Nie musisz używać nazw, potrzebujesz jedynie adresów IP serwerów DNS.
Znajdziesz je w sekcji ADDITIONAL SECTION.