|
|
Konfiguracja karty sieciowej
Żeby mieć co konfigurować, na początek trzeba sprawić, żeby system zobaczył karty sieciowe, czyli skojarzył je z logicznymi interfejsami sieciowymi eth0, eth1, itd.
Konieczne jest wkompilowanie odpowiednich sterowników w jądro systemu. Sterowniki te można skompilować jako moduły kernel'a, co w przypadku kart sieciowych na magistrali ISA jest lepszym rozwiązaniem, gdyż w przeciwieństwie do kart PCI nie są one automagicznie rozpoznawane podczas startu. Dlatego by uaktywnić kartę ISA trzeba podać adres IO karty (standardowo o ile mi wiadomo jest to 0x300). Wygodniej jest to z reguły zrobić przekazując odpowiedni parametr programowi modprobe, niż kernelowi przy starcie.
Szczegółami kompilacji i instalacji kernela nie będę się tu zajmował.
Jeśli sterowniki skompilowane są jako moduły, należy dodać odpowiednie linie do /etc/modules.comf, przykładowo:
alias eth0 ne2k-pci
alias eth1 rtl8139
W przypadku kart ISA po nazwie modułu należy dodać parametr io=0xXXX, wskazując w ten sposób adres karty
alias eth2 ne io=0x300
Teraz po wykonaniu poleceniu depmod w celu uaktualnienia danych o modułach można załadować sterownik poleceniem
modprobe eth0
By sprawdzić, czy wszystko poszło zgodnie z planem, można zajrzeć do pliku /proc/net/dev, który powinien zawierać coś w stylu:
lo: 1275531 12046
eth0: 967879183 874984
eth1: 371852125 1761339
Dobrze więc - skoro system widzi już kartę sieciową, pora skonfigurować ją tak, by mogła się do czegoś przydać.
W systemie Red-Hat sprowadza się to do kilku wpisów w dwóch plikach konfiguracyjnych. Przede wszystkim w katalogu /etc/sysconfig/network-scripts/ należy utworzyć plik o nazwie w postaci ifcfg-ethX, gdzie X jest numerem interfejsu. Typowa zawartość tego pliku wygląda następująco:
DEVICE=eth0
IPADDR=62.233.111.111
NETMASK=255.255.255.252
BOOTPROTO=none
ONBOOT=yes
Po kolei parametry oznaczają: interfejs sieciowy, przypisany mu adres IP i maskę podsieci, protokół automatycznej konfiguracji (może być np. dhcp, jeśli mamy w sieci taki serwer. By ta opcja odniosła skutek konieczne jest wkompilowanie odpowiedniego elementu w jądro).
Ostatni parametr określa, czy interfejs ten ma być automatycznie uaktywniany przy starcie systemu.
Jeśli zadbaliśmy o właściwe wpisy w pliku /etc/modules.conf, to system bez problemu sam załaduje odpowiednie moduły sterowników przy pierwszym "podniesieniu" interfejsu.
Używając poleceń ifup oraz ifdown możemy ręcznie aktywować i deaktywować wybrane interfejsy sieciowe.
I to już praktycznie wszystko. Po wpisaniu polecenia ifconfig powinny zostać wyświetlone informacje na temat aktywnych interfejsów sieciowych, w tym skonfigurowanej właśnie karty sieciowej. Bez problemu powinno się dać na nią "zapingać" (ping )
Jeśli skonfigurowana właśnie karta ma nam umożliwić dostęp do internetu, konieczna jest jeszcze zmiana w pliku /etc/sysconfig/network. Musimy wskazać systemowi domyślną bramę (gateway).
Wystarczy w tym pliku dodać dwa wpisy:
GATEWAY=
GATEWAYDEV=
Gdzie IP to numer IP naszego routera, a DEV to nazwa interfejsu sieciowego, przez który ma "wychodzić" ruch na świat (eth0, ppp0, itp.).
Na koniec przypomnę raz jeszcze, że opisane wyżej pliki konfiguracyjne są charakterystyczne dla dystrybucji RedHat. W innych dystrybucjach mogą one wyglądać zupełnie inaczej i być gdzie indziej umieszczone. Tak czy inaczej, do przeprowadzenia właściwej konfiguracji skrypty zawsze wykorzystują polecenia wspólne dla wszystkich Linuxów.
I tak, dla przykładu, żeby skonfigurować interfejs eth0 na adres 192.168.0.30, z maską podsieci 255.255.255.192 (adres podsieci i broadcast będą miały w tym przypadku wartości odpowiednio: 192.168.0.0 oraz 192.168.0.63), oraz ustawić gateway na adres 192.168.0.1, wystarczy wydać dwa polecenia:
ifconfig eth0 192.168.0.30 netmask 255.255.255.192 broadcast 192.168.0.63
route add default gw 192.168.0.1
Wyłączyć interfejs można natomiast poleceniem:
ifconfig eth0 down
|
|