Mobil és vezetéknélküli hálózatok kezelése Linux és *BSD operációs rendszerek alatt Jeney Gábor
Kivonat
Adminisztratív tudnivalók
Oktatók, tárgyfelelős
Teljesítés feltételei
A félév menete
IP-vel (v4 és v6) kapcsolatos beállítások
Cím konfiguráció
Routing konfiguráció
DNS konfiguráció
A tárgy oktatói és a tárgyfelelős
Oktatók:
Bokor László
Kanizsai Zoltán
Huszák Árpád
Lendvai Károly
Gódor Győző
Jeney Gábor
Tárgyfelelős: Dr. Jeney Gábor
I.B.450, 2418-as egyetemi mellék,
[email protected], +36-20-997-4858
Adminisztratív tudnivalók
Heti 1x90 perces tárgy, csak előadással
Az elméleti anyagot az előadásokon rögtön gyakorlatban is bemutatjuk Az évben 2 db ZH, az előadások elején lesznek megtartva −
A ZH-kon való részvétel kötelező, a többi nem!
Feltételezzük, hogy rendelkeztek:
Alapvető operációs rendszer kezelési ismeretekkel
Alapvető hálózat- és protokollismeretekkel − −
Ha mégse, mindig adunk hivatkozásokat Az elméleti ismeretek felvezetésére itt nem lesz idő
Miért vettétek fel ezt a tárgyat?
Mert könnyűnek tűnt
Nyilván nem lesz olyan nehéz, mint az EMT
DE! 2 db ZH, és szóbeli vizsga!
Mert érdekel
Hurrá! Örülünk! Javasoljuk, hogy az órán hallottakat próbáljátok ki otthon egy saját Linux, vagy *BSD installáción − −
Ha valami nem megy, bátran kérdezz tőlünk Ha valami nem stimmel (más volt a fóliákon, mint amit tapasztaltál), akkor kérjük jelezd (és köszönjük)
Félévközi teljesítés (zárthelyik)
Kétszer lesz, 6. és 10. hét
Mindkettő igen/nem jellegű (nem jegyet adunk)
Mindkettő pótolható a szorgalmi időszakban
Mindkettőt meg kell csinálni, ahhoz, hogy aláírás legyen
Ha nem sikerül, a pótlási héten is
Aláírás nélkül nem lehet vizsgázni
A tárgyra kapott érdemjegy = a szóbeli vizsga eredménye (függetlenül a ZH-k tartalmától)
A félév menete
Blabla
Kezdjük el...
A hálózati kártya beállításai Alapvető IP szintű beállítások
A hálózati kártya aktiválása
A legtöbb mai disztribúció megcsinálja magától
Démonokkal, pl. hald, udev
Ha mégse (tényleg?), akkor kézzel csinálhatjuk:
Linux alatt „modprobe driver”
*BSD alatt „kldload driver”
Mindkettő paraméterezhető (hardver szintű beállítások végett, pl. io_ports, irq, stb.) A naplóból (log) nézzük, hogy mi történt (pl. dmesg, vagy a /var/log fájljai, syslog, messages, stb.)
A hálózati kártya aktiválása – példa $ sudo modprobe e1000e $ dmesg | tail [124742.648108] e1000e: Intel(R) PRO/1000 Network Driver - 1.0.2-k2 [124742.648115] e1000e: Copyright (c) 1999-2008 Intel Corporation. [124742.648210] e1000e 0000:00:19.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20 [124742.648224] e1000e 0000:00:19.0: pci_enable_pcie_error_reporting failed 0xfffffffb [124742.648239] e1000e 0000:00:19.0: setting latency timer to 64 [124742.648458] e1000e 0000:00:19.0: irq 31 for MSI/MSI-X [124742.892091] 0000:00:19.0: eth0: (PCI Express:2.5GB/s:Width x1) 00:1a:6b:3a:9f:bc [124742.892099] 0000:00:19.0: eth0: Intel(R) PRO/1000 Network Connection [124742.892146] 0000:00:19.0: eth0: MAC: 6, PHY: 6, PBA No: ffffff-0ff [124743.052700] e1000e 0000:00:19.0: irq 31 for MSI/MSI-X
Kártya szintű beállítások
Ha betöltöttük a drivert, akkor megjelenik az interfész
Az ifconfig-gal (Linux és *BSD alatt is) lekérdezhetjük és átírhatjuk az interfészeinket
Interfész = eszköz kapcsolódási pont. Lehet Ethernet kártya, WiFi kártya, Bluetooth kapcsolat, loopback interfész, stb.
ifconfig -a => a nem aktív interfészeket is mutatja
Az interfészek elnevezése:
Linux alatt: eth* = Ethernet interfész, wlan*, vagy wifi* (a drivertől függően) = WiFi interfész => nem túl jó megoldás
BSD alatt: az adott drivernek megfelelő név (pl. sm*, at*)
A * helyére 0-tól kezdve egész számokat kell helyettesíteni
Az lo a loopback interfész
Kártya szintű beállítások – példa $ ifconfig eth0
Link encap:Ethernet
HWaddr 00:1a:6b:3a:9f:bc
UP BROADCAST 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:1000 RX bytes:0 (0.0 B)
TX bytes:0 (0.0 B)
Memory:fe200000-fe220000 $ sudo ifconfig eth0 hw ether ba:be:ba:be:ba:be $ ifconfig eth0
Link encap:Ethernet [...]
HWaddr ba:be:ba:be:ba:be
Az IP alap beállításai – a címek
Az Internet protokoll két verziója:
IPv4, decimális, 4x8bites címek pl. 152.66.248.201/24 IPv6, hexadecimális, 16x8bites címek, 0-k helyett :: pl. 2001:738:2001:2088::1000/64
IPv4-ben még egyéb beállítások
Alhálózati maszk (/24 = 255.255.255.0)
Broadcast cím (pl. 152.66.248.255) •
IPv6-ban speciális multicast csoportok helyette
Eszközök:
*BSD-ben ifconfig mindkét protokollhoz (sőt máshoz is) Linux alatt IPv4-hez ifconfig, Ipv6-hoz csak ip ajánlott (Az ip-vel az IPv4-es beállítások is módosíthatóak)
Az IP alapjai, címek – példa $ ifconfig wlan0 wlan0
Link encap:Ethernet
HWaddr 00:13:e8:7d:8f:a5
inet addr:192.168.101.203
Bcast:192.168.103.255
Mask:255.255.252.0
inet6 addr: 2001:738:2001:20a0:213:e8ff:fe7d:8fa5/64 Scope:Global inet6 addr: fe80::213:e8ff:fe7d:8fa5/64 Scope:Link UP BROADCAST RUNNING MULTICAST
MTU:1500
Metric:1
RX packets:28 errors:0 dropped:0 overruns:0 frame:0 TX packets:18 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:3041 (3.0 KB)
TX bytes:3652 (3.6 KB)
$ ifconfig wlan0 10.0.0.1 netmask 255.0.0.0 wlan0
Link encap:Ethernet inet addr:10.0.0.1 [...]
HWaddr 00:13:e8:7d:8f:a5 Bcast:10.255.255.255
Mask:255.0.0.0
IP címek beállítása • Három lehetőség – Automatikus, op. rendszer által lebonyolított, pl. NetworkManager, vagy IPv6 stateless autoconf. A NetworkManager is ezt csinálja: – DHCP segítségével (v4 és v6 is) dhclient (IPv4), vagy dhcp6c (IPv6) – Kézzel => ifconfig, vagy ip (Linux alatt) • *BSD rendszerekben ifconfiggal minden beállítható • Linux alatt ip-vel minden beállítható. IPv4 esetén az ifconfig is megteszi
IP címek beállítása Példa: $ ifconfig eth0 | grep inet6 inet6 addr: fe80::21a:6bff:fe3a:9fbc/64 Scope:Link $ sudo ip -6 addr add dead:beef:babe:feed:cafe:acca:0da:ede dev eth0 $ ifconfig eth0 | grep inet6 inet6 addr: dead:beef:babe:feed:cafe:acca:da:ede/128 Scope:Global inet6 addr: fe80::21a:6bff:fe3a:9fbc/64 Scope:Link
IP alapok – a routing
Merre jutunk ki a hálózatunkból?
Az alapértelmezett átjáró IP címe
IPv4-ben egyetlen default gw, IPv6-ban lehet több is lehet Eszközök: – IPv4-hez Linux alatt a route parancs – IPv4/IPv6-hoz linux alatt az ip parancs – *BSD alatt a route parancs mindenhez
IP routing – példa $ route Kernel IP routing table Destination
Gateway
Genmask
Flags Metric Ref
Use Iface
192.168.100.0
*
255.255.252.0
U
0
0
0 wlan0
default
gep001.mik.lan
0.0.0.0
UG
0
0
0 wlan0
$ ip -6 route show 2001:738:2001:20a0::/64 dev wlan0 1500 advmss 1440 hoplimit 0
proto kernel
fe80::/64 dev wlan0
metric 256
proto kernel
metric 256
expires 117sec mtu
mtu 1500 advmss 1440 hoplimit 0
default via fe80::214:4fff:fe2a:38a dev wlan0 proto kernel expires 6sec mtu 1500 advmss 1440 hoplimit 64
metric 1024
IP routing módosítás • Három lehetőség – Automatikusan pl. NetworkManager, vagy valamilyen kapcsolati script (pl. pppd) által – Automatikusan az ifconfig/ip parancsok kiadása után (a helyi prefix tekintetében) – Kézzel route, vagy ip parancsokkal (lásd a kézikönyvüket)
DNS
Domain Name System Domén Név Rendszer
DNS beállítások – statikus DNS • /etc/hosts fájl: tételes lista Pl: 127.0.0.1 localhost 127.0.1.1 dezsolaptop # The following lines are desirable for IPv6 capable hosts ::1
localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts
DNS beállítások – dinamikus • /etc/resolv.conf fájl: a dinamikus névfeloldás paraméterei Pl: nameserver 10.171.0.1 nameserver 10.171.0.2 domain netuddki.hu search hit.bme.hu /etc/host.conf fájl: a névfeloldás sorrendje Pl. order hosts,bind multi on
DNS beállítások módosítása • Három lehetőség – Automatikusan a NetworkManager (vagy más script, pl. dhclient, pppd), vagy a resolvconf alkalmazás által – Kézzel, az előző három fájl módosításával • Leginkább a resolv.conf-ba a nameserver sorokat szoktuk kitölteni/felülírni