Administracja siecią w Red Hat Enterprise Linux 7
Administracja siecią w RHEL6 oparta była głównie o manualną konfigurację serwisu „network”, a usługa „NetworkManager” była zwykle wyłączana. Administrator edytował pliki z katalogu /etc/sysconfig/network-scripts/ więc musiał znać stosowne dyrektywy, a nie było narzędzia, które mogłoby mu w tym pomóc.
Wraz z nadejściem Red Hat Enterprise Linux 7, zmieniło się podejście do konfiguracji sieci. Usługa „NetworkManager” została poszerzona o nowe narzędzie „nmcli”, które uwalnia administratora od konieczności samodzielnego modyfikowania plików konfiguracyjnych (konfiguracja „po staremu” nadal jest wspierana).
W Red Hat Enterprise Linux 7 Red Hat zaleca porzucenie poleceń „ifconfig” i „netstat” na rzecz „ip” i „ss”.
Poniżej przegląd popularnych poleceń wykorzystywanych do konfiguracji siecią ipv4:
1. Polecenie “ip”
(opcjonalnie) Załaduj kilka kart sieciowych. # modprobe dummy numdummies=3 # ip addr ls label "dummy*"
a) Zmiana nazwy
# ip link set dev dummy0 name kkk
b) Zmiana MAC
# ip link set dev kkk address 00:21:cc:d2:4e:0c
c) Pokaż link na kartach
# ip link [ls|show] # ip link ls up # ip link ls dev eth0
d) Pokaż statystyki
# ip -s -s link ls dev eth0
e) Ustawienie standardowego loopbacku
# ip addr add 127.0.0.1/8 dev lo brd + scope host
f) Dodanie adresu IP
# ip addr add 10.10.10.10/24 dev eth0 [brd +] (brd + <- ostatni adres sieci: 10.10.10.255 <- standard) (brd - <- ostatni adres sieci: 10.10.10.0)
g) Listowanie adresów
# ip addr [ls|show] # ip addr ls to 10.10.10/24 # ip addr ls dev eth0 # ip addr ls label "dummy*" # ip addr ls {dynamic|permanent}
h) Usuwanie adresów
# ip addr del 10.10.10.10/24 dev eth0 # ip addr flush dev eth0 # ip addr flush to 10.10.10/24 # ip addr flush {dynamic|permanent}
i) Operacje na tablicy ARP
# ip neigh [ls|show] # ip neigh flush 10.10.10.10 # ip neigh flush to 10.10.10/24 # ip neigh flush dev eth0
j) Routing
# ip route [ls|show] # ip route add 172.16/16 via 172.168.1.1 [dev eth0] [src 172.168.1.5] # ip route flush cache # ip route get 10.10.10.10 [from 172.168.1.5] # ip route del {default|0/0} # ip route add default via 10.10.11.254 [dev eth0] Skanowanie po UDP. # traceroute hostname Skanowanie po ICMP. # traceroute -I hostname Skanowanie po TCP. # traceroute -T hostname
2. Wystawione usługi
Polecenie „ss" używa podobnych przełączniów co „netstat". Połączenia tcp: # ss -tapn Połączenia udp: # ss -uapn wszystkie połączenia tcp i udp: # ss -taupn # lsof -P -i[4|6] -n
3. NetworkManager – nmcli
(Bardzo dobrze działa podpowiadanie składni – “bash completion”)
a) Wszystkie zdefiniowane połączenia sieciowe
# nmcli connection show
b) Tylko aktywne w tym czasie
# nmcli connection show --active
c) Szczegóły konkretnego połączenia
# nmcli connection show "System eth0"
d) Status urządzeń
# nmcli device [status]
e) Status jednogo urządzenia
# nmcli device show eth0
f) Tworzenie nowego połączania
# nmcli connection add help
g) Połączenie z dhcp, autoconnect
# nmcli connection add con-name "default" ifname eth0
h) Połączenie statyczne, bez autoconnect
# nmcli connection add con-name "Eth0" ifname eth0 autoconnect no type ethernet ip4 24.24.24.24/24 gw4 24.24.24.254
i) Włącz/wyłącz dowolną sieć
# nmcli connection {up|down} "Eth0"
j) Włącz/wyłącz interfejs sieciowy
# nmcli device [dis]connect eth0
k) Ustawienie DNSów
# nmcli connection modify "static" ipv4.dns 172.16.16.16 # nmcli connection modify "static" +ipv4.dns 8.8.8.8
l) Zmiana ip i gateway’a
# nmcli connection modify "static" ipv4.addresses 10.10.10.10/24 ipv4.gateway 10.10.10.254
m) Dołożenie następnego ip
# nmcli connection modify "static" +ipv4.addresses "11.11.11.11/24"
n) Włączenie/wyłączenie sieci – wszystkich interfejsów zarządzanych przez NM
# nmcli networking on/off
4. Hostname
Zapomnij o /etc/sysconfig/network. Za konfigurację nazwy hosta odpowiada plik /etc/hostname lub użyj polecenia „hostnamectl”.
# hostnamectl [status] # hostnamectl set-hostname host.example.com
A jeśli spanikujesz, to odpal „nmtui”.