Linux: Võrguvahendid (interfaces and utils)

!! Uurime UBUNTU linuxi põhjal !!
NB! Teistes linuxites konfiguratsiooni failid võivad asuda teistes katalogides/failides ja võivad omada erinevat struktuuri.

Loe täpsemalt: Ubuntu network configuration,  Debian network configuration. Interfaces. VLAN. Bridges. ifconfig, ethtools,
Introduction to NetworkingLinux Networking, Linux Wireless Networking, Simple Network Troubleshooting
Kasutatavad võrguühenduste tüübid: ethernet, wireless, bluetooth.

Võrguprobleemide lahendamisest:   Võrgu probleemide lahendamine, Network Problem Solving

Ethernet seadme nimi on harilikult eth0, eth1, eth2, jne.
IP aliased on lisa interfeisid füüsilisel interfeisil: eth0:1, eth0:2, eth2:1, jne
VLAN interfeisid on virtual interfeisid füüsilisel interfeisil(kaardil): eth0.576, eth2.1024, eth2.4095
Bridge interface: br0, br1, br2, jne

NB! Linuxi importimisel VirtualBoxi kui muudate MAC aadressi (mis on ka loomulik) tekib etherneti kaardi probleem, kus olemasoleva võrgukaardi interfeisi number muutub ühe võrra suuremaks: eth0 -> eth1, eth1 -> eth2 jne.
Tulemuseks on see et vaikimisi võrgu kaart ei toimi.
Selleks et lahendada tekinud probleem onn vaja teha järgmist:

Kontrollime kõiki võrgu seadmeid:
$ sudo ifconfig -a
Kui leidub ethX mingi numbriga, kus X on leitud etherneti kaardi number nagu eth1,eth2,eth3
siis tõstame interfeisi püsti:
$ sudo ifconfig ethX up
Põrime/Saame dhcp-ga IP aadressi
$ sudo dhclient ethX
Kontrollime IP-d:
$ sudo ifconfig ethX
Server linuxis selleks et peale reboot-imist network tõuseks püsti on vaja
käsurea võrgu interfeiside konfiguratsiooni failis: /etc/network/interfaces selle interfeisi kohta teha kirje
auto ethX
iface ethX inet dhcp

Või fikseerida IP aadress (vaata allpool).

Võrgu utiliidid

Utiliidid võrgu seadmete häälestamiseks, võrgu toimimise kontrolliks ja probleemide lahendamiseks,
NB!
mõned neist vajavad root priveleege
Ethernet interfeisi konfigureerimis programm
# ifconfig
$ /sbin/ifconfig
Wireless interfeisi konfigureerimis programm
# iwconfig
$ /sbin/iwconfig
Interfeisi aktiveerimise/deaktiveerimise skriptid
# ifup eth0
# ifdown eth0
Ethernet interfeiside seadistamis vahend
# ethtool

Bridging
Interfeiside vahelise bridgimise(sildamise) vahend
# brctl
Lisamiseks tuleb installida bridge-utils

Routing
Ruutingi tabel
# route -n
# netstat -rn
Viimasel aja jooksul pöördutud MAC ja IP tabel
# arp -a
# ip

Paketide liikumine IP tasemel
ICMP päringu programm
# ping www.ny.com
Teekonna treisimis programm (UDP või ICMP kaudu)
# traceroute www.ny.com
# mtr
# mtr www.ny.com

Võrgu ühenduste parameetrite jälgimine
Väljastada kõik TCP ühendused
# netstat -antp
Väljastada välja kõik UDP ühendused
# netstat -anup
Väljastada ruutingu tabel
# netstat -r

Nimelahenduste kontrollimine
# nslookup
# dig

Võrgu elementide kaardistamine ja portide skaneerimine/uurimine
# nmap

Võrgukaardi traafiku sniffimine ja filtreerimine
$ tcpdump

IP omanikud
IP või nime järgi IP aadressite vastutajate pärimine RIPE baasist
# whois

Võrgu interfeiside häälestamine

NB! Kui kasutate graafilist konfigureerimis programmi siis konfiguratsiooni failid leiad /etc/NetworkManager

Käsurea võrgu interfeiside konfiguratsiooni fail asub: /etc/network/interfaces
Ja seda tuleks kasutada siis kui konfigureerid terminalis või serveril.

Näide kus eth0 interfeis häälestatakse DHCP abil (dynaamiliselt) :
# The primary network interface - use DHCP to find our address
auto eth0
iface eth0 inet dhcp

või eth2:
auto eth2
iface eth2 inet dhcp

Näide eth0 staatilisese interfeisi konfiguratsioonist:

# The primary network interface example
auto eth0
iface eth0 inet static
address 192.168.3.90
gateway 192.168.3.1
netmask 255.255.255.0

Konfiguratsiooni näide eth1 - staatilisene interfeis suurema hulga parameetritega

# The secondary network interface example
auto eth1
iface eth1 inet static
address 172.16.7.22
gateway 172.16.7.254
netmask 255.255.255.0
network 172.16.7.0
broadcast 172.16.7.255

Konfiguratsiooni näide eth0 interfeisi IP aliase (teine või rohkem IP interfeisile) :

# IP alias on primary interface example
auto eth0:1
iface eth0:1 inet static
address 192.168.1.60
netmask 255.255.255.0
gateway 192.168.1.1

Konfiguratsiooni näide eth0 interfeisi VLAN numbriga 123:

# VLAN interface on primary interface example
auto eth0.123
iface eth0.123 inet static
address 192.168.10.6
netmask 255.255.255.240
network 192.168.10.0
gateway 192.168.10.1

Konfiguratsiooni näide br0 interfeisist mis ühendab kõik teised interfeisid:

# Bridge interface example
auto br0
iface br0 inet static
address 192.168.20.2
netmask 255.255.255.0
gateway 192.168.20.1
bridge_ports all

Selleks et muudatused jõustuks on vaja restartida võrgu deemon
# /etc/init.d/networking restart

Võrgu kaartide parameetrite vaatamine:
# ifconfig
$ /sbin/ifconfig

Konkreetse kaardi parameetrid saab kätte
VLAN 1 jaoks interfeisil eth0
$ ifconfig eth0.1
1-ne IP alias eth0 -il
$ ifconfig eth0:1

Ajutise IP aadressi konfigureerimine eth0 interfeisile.
NB! Kasutamiseks muuda vajalikuks kaardi nimi, IP aadress ja netmask.
!!!!Peale rebooti reegel kaob ära !!!!
$ sudo ifconfig eth0 10.0.0.100 netmask 255.255.255.0

$ /sbin/ifconfig eth0

eth0      Link encap:Ethernet  HWaddr 00:15:c5:4a:16:5a  
          inet addr:10.0.0.100  Bcast:10.0.0.255  Mask:255.255.255.0
          inet6 addr: fe80::215:c5ff:fe4a:165a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:466475604 errors:0 dropped:0 overruns:0 frame:0
          TX packets:403172654 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:2574778386 (2.5 GB)  TX bytes:1618367329 (1.6 GB)
          Interrupt:16 
 

Kui on vaja konfigureerida vaikimisi gateway kasutame käsku route vastavate parameetritega.
# sudo route add default gw 10.0.0.1 eth0

Trükime välja ruutingu tabeli:
# route -n

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.0.0        0.0.0.0         255.255.255.0   U     1      0        0 eth0
0.0.0.0         10.0.0.1        0.0.0.0         UG    0      0        0 eth0

Nimelahenduseks on vaja sättida fail /etc/resolv.conf
# cat /etc/resolv.conf
search tptlive.ee
nameserver 192.168.253.250
nameserver 192.168.253.249

Programm ethtool on program mis väljastab ja määrab Ethernet kaardi settinguid nagu: auto-negotiation, port speed, duplex mode, ja Wake-on-LAN.
Vaikimisi pole installitud süsteemi. Installimiseks trüki käsureas:
# sudo apt-get install ethtool

Väljastame eth0 parameetrid kasutades ethtool käsku:
# sudo ethtool eth0

Settings for eth0:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full 
                                100baseT/Half 100baseT/Full 
                                1000baseT/Half 1000baseT/Full 
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full 
                                100baseT/Half 100baseT/Full 
                                1000baseT/Half 1000baseT/Full 
        Advertised auto-negotiation: Yes
        Speed: 1000Mb/s
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 1
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: g
        Wake-on: d
        Current message level: 0x000000ff (255)
        Link detected: yes