Powrót do strony głównej

Korzystanie z sieci

UML umożliwia korzystanie z sieci. Konfiguracja usług sieciowych jest dość skomplikowana. Twórcy UML zdając sobie z tego sprawę dołączyli do systemu narzędzie uml_net, które załatwia większość szczegółów konfiguracyjnych - dzięki temu uruchomienie sieci pod UML stało się stosunkowo proste. W dalszej części zostanie omówiona konfiguracja sieci właśnie przy pomocy uml_net.

 Istnieje kilka sposobów transportowania pakietów (tylko TUN/TAP oraz ethertap jest wspierany przez uml_net - w pozostałych przypadkach należy skonfigurować sieć ręcznie). Kiedy należy używać poszczególnych sposobów transportowania pakietów?

 

Co robi uml_net?

Uml_net jest to narzędzie pomagające przy konfiguracji sieci, instalowane wraz z innymi narzędziami UML-a. Uml_net jest odpowiedzialny za te ustawienia sieci w systemie macierzystym, które wymagają uprawnień root'a. Uml_net wykonuje automatycznie dużą część roboty związanej z tymi ustawieniami. Narzędzie to jest uruchamiane automatycznie przez UML z odpowiednimi parametrami - użytkownik nie powinien samodzielnie uruchamiać uml_net. Ze względu na rodzaj wykonywanej pracy uml_net musi mieć ustawiony setuid na root, który sprawia, że narzędzie to  pracuje z uprawnieniami administratora.

Co dokładnie robi to uml_net? Ustawia ruting, arp proxy, urządzenie tap<i> dla podanej deklaracji wirtualnego urządzenia sieciowego dla UML-a, a nawet ładuje moduł tun.o jeśli takowy nie jest załadowany do jądra. Dodatkowo jeśli zmienimy adres IP interfejsu sieciowego w UML-u to uml_net sprawi aby zmieniły się odpowiednie wpisy w tablicy rutingu i arpingu.

Istniej jednak wada używania uml_net. Jest to bezpieczeństwo bezpieczeństwo. Ponieważ proces tego narzędzia wykonuje się z uprawnieniami roota, więc teoretycznie ułatwia to wszelkiego rodzaju ataki na system. Korzystanie z dobrodziejstw uml_net szczególnie odradzane jest w przypadku korztystania z transportu pakietów poprzez ethertap. Przetwarzanie każdego pakietu wymaga uruchomienia uml_net. Dla TUN/TAP uml_net  uruchamiany jest stosunkowo rzadko.

 

Konfiguracja sieci z użyciem TUN/TAP z wykorzystaniem uml_net

Konfiguracja sieci z użyciem TUN/TAP z wykorzystaniem uml_net jest bardzo prosta. Sprowadza się właściwie do dodania jednego parametru do parametrów podawanych przy starcie UML.

linux ..... eth0=tuntap,,,192.168.1.3

Zamiast eth0 można użyć ethX, gdzie X jest numerem urządzenia, jakie chcemy, aby było widoczne pod UML. Numer 192.168.1.3 mówi do jakiego urządzenia w komputerze hosta mają być przekazywane wszelkie żądania z wirtualnego komputera UML.

Gdy uruchomi się UML należy jeszcze przystosować wirtualną maszynę do współpracy z siecią. Komenda:

ifconfig eth0 192.168.2.13 up

powoduje ustawienie parametrów wirtualnej karty sieciowej oraz jej aktywację. Należy jeszcze ustawić parametry domyślnej bramy:

route add default gw 192.168.1.1

Od tej pory sieć na maszynie UML powinna działać prawidłowo.

 

Dalsze informacje - dla ambitnych

Wszystkich zainteresowanych głębszym poznaniem i zrozumieniem tajników manualnej konfiguracji usług sieciowych (bez wykorzystania uml_net) polecam zapoznanie się z materiałami umieszczonymi na stronie: http://user-mode-linux.sourceforge.net/networking.html