LINUX

Das universelle Betriebssystem

Eine Einführung - Teil 10

Deutsche Angestellten Akademie

Systemverwaltung

Part 8 - Netzwerke

Begriffe:

IP = Internet Protocol Basis für TCP und UDP
TCP = Transmission Control Protocol Ende-zu-Ende Verbindung zw. 2 Geräten
UDP = User Datagram Protocol minimales, verbindungsloses Netzwerkprotokoll
ICMP = Internet Control Message Protocol Austausch v. IP Status / Fehlern
PPP = Point-to-Point Protocol Verbindung über Wählleitungen, zB ADSL / UMTS / ISDN
Gateway Router über den man ins Internet kommt
Nameserver der für die Adressauflösung zuständige Rechner
loopback lokale Netzwerkschnittstelle zum internen Gebrauch

IP Adressen

IPv4

eine IPv4 Adresse:
65.142.5.123
  • 32 bits Länge, 4 x 8 Bit ( 0 - 255 )
  • max. 4.294.967.296 Adressen
192.168.0.23/24

 
Address192.168.0.2311000000.10101000.00000000.00010111
Netmask255.255.255.0 = 2411111111.11111111.11111111.00000000
Wildcard0.0.0.25500000000.00000000.00000000.11111111


Network192.168.0.0/2411000000.10101000.00000000.00000000
Broadcast192.168.0.25511000000.10101000.00000000.11111111
First IP192.168.0.111000000.10101000.00000000.00000001
Last IP192.168.0.25411000000.10101000.00000000.11111110
Hosts/Net254nnnnnnnn.nnnnnnnn.nnnnnnnn.hhhhhhhh

Private IP Bereiche

Adressbereich Beschreibung größter CIDR-Block Anzahl IP-Adressen
10.0.0.0–10.255.255.255 privat, 1 8-Bit-Netz 10.0.0.0/8 224 = 16.777.216
172.16.0.0–172.31.255.255 privat, 16 16-Bit-Netze 172.16.0.0/12 220 = 1.048.576
192.168.0.0–192.168.255.255 privat, 256 24-Bit-Netze 192.168.0.0/16 216 = 65.536
169.254.0.0–169.254.255.255 link local, 1 16-Bit-Netz 169.254.0.0/16 216 = 65.536

https://de.wikipedia.org/wiki/Classless_Inter-Domain_Routing

verfügbare ipv4 Adress-Blöcke

IPv6

eine IPv6 Adresse
2002:58bf:13bb:0002:0000:0000:0020:1234	 
  • seit 1998 !
  • moderne Betriebssysteme können es alle
  • 128 bits Länge ( 8 x 4 x 4 Bit )
  • Notierung Hexadezimal
  • max. 3,4x10^38 (ca 340 Sextillionen) Adressen
  • URL Notation: http://[2001:0db8:85a3:08d3::0370:7344]/
  • NAT und DHCP sind nicht mehr nötig. In IPv6 ist eine Autokonfiguration eingebaut.
  • Der Adressraum genügt auch für alle Toaster
  • ipv6 Adressen können für ein Device immer gleich bleiben
  • „Privacy Extension“ - Interface identifier wird alle paar Tage gewechselt
  • mehrere ipv6 Adressen
  • Geräte mit ipv6 sind aus dem Internet erreichbar
  • Router hat noch Nutzen als Firewall
Führende Nullen innerhalb eines Blockes dürfen ausgelassen werden: 2001:0db8:0000:08d3:0000:8a2e:0070:7344
ist gleichbedeutend mit
2001:db8:0:8d3:0:8a2e:70:7344

Mehrere aufeinander folgende Blöcke, deren Wert 0 (bzw. 0000) beträgt, dürfen ausgelassen werden. Dies wird durch zwei aufeinander folgende Doppelpunkte angezeigt:
2001:0db8:0:0:0:0:1428:57ab
ist gleichbedeutend mit
2001:db8::1428:57ab
.

Hat z. B. ein Netzwerkgerät die IPv6-Adresse
2001:0db8:85a3:08d3:1319:8a2e:0370:7347/64
so lautet das Präfix ( vom Provider zuget. )
2001:0db8:85a3:08d3::/64
und der Interface-Identifier
1319:8a2e:0370:7347

speziellle adressen

localhost
::1/128
link local
fe80::/64
( entspr. 169.254.0.0/16 in ipv4)
  • Netzwerk wird mit Netzwerkmanager konfiguriert
  • geht auch im terminal :
    nmcli -h
/etc/NetworkManager/system-connections/Wired connection 1
[connection]
id=Wired connection 1
uuid=180051c9-6df6-4a96-8d8f-8a0c2eb9050e
type=ethernet
permissions=
timestamp=1531903725

[ethernet]
mac-address-blacklist=

[ipv4]
dns=192.168.1.4;9.9.9.9;
dns-search=
ignore-auto-dns=true
method=auto

[ipv6]
addr-gen-mode=eui64
dns=2a02:8071:4280:ba00:f640:6751:3af0:bb97;2620:fe::10;
dns-search=
ignore-auto-dns=true
ip6-privacy=1
method=auto

DNS

Domain Name System

Das Telefonbuch des Internet
  • geht zurück auf die „hosts“ Datei d. ARPANET
  • händisch gepflegte Liste aller Hosts -> seriously??
  • Einführung des DNS ab 1983
  • übersetzt domain Namen ( www.omikron.net ) in IP Adressen
  • https://de.wikipedia.org/wiki/Domain_Name_System
  • Jeder kann einen DNS Server betreiben ( zb Pi-Hole )
Aufgabe: ändert euren voreingestellten DNS Server per network Manager, z.B.

google: 8.8.8.8
Quad9: 9.9.9.9
bzw ipv6 Äquivalent

Manuelle Konfiguration

/etc/hosts
127.0.0.1 localhost
127.0.0.1 dev.local
127.0.1.1 workhorse.fcknzs workhorse

192.168.1.5 pi


# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

2a01:4f8:191:6204::2 lk.schubertdaniel.de
					
/etc/resolv.conf
#Generated by NetworkManager
nameserver 192.168.1.4 #pihole
nameserver 9.9.9.9
nameserver 2a02:8071:4280:ba00:f640:6751:3af0:bb97 #pi hole

# NOTE: the libc resolver may not support more than 3 nameservers.
# The nameservers listed below may not be recognized.
nameserver 2620:fe::10
					
/etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback

# dhcp
 auto eth0
    allow-hotplug eth0
    iface eth0 inet dhcp

 iface eth0 inet6 dhcp # stateful
 iface eth0 inet6 auto # stateless
					
/etc/network/interfaces
# statische konfiguration
 auto eth0
	iface eth0 inet static
	    address 192.0.2.7
	    netmask 255.255.255.0
	    gateway 192.0.2.254

	iface eth0 inet6 static
	    address 2001:db8::c0ca:1eaf
	    netmask 64
	    gateway 2001:db8::1ead:ed:beef

					
/etc/hostname
laptop
Befehle zur Konfiguration der Netzwerkschnitstelle
# netzwerk geräte anzeigen
~$ ip link show

# ip adressen anzeigen
~$ ip addr

# netzwerk device de-/aktivieren
~$ ip link set enp0s7 down
~$ ip link set enp0s7 up

# ip setzen
~$ ip addr add 192.168.1.2/24 dev enp0s7

# route zeigen
~$ ip route

#route ( gateway ) hinzufügen
~$ ip route add default via 192.168.1.1
					
Befehle zur Konfiguration der WLAN-Netzwerkschnitstelle
~$ iw dev wlan0 info
~$ iw dev wlan0 link

~$ iw dev wlan0 scan #...

~$ iw dev wlan0 connect gastnetz-01
~$ dhclient wlan0  # holt dhcp ein

~$ iw dev wlan0 disconnect

					
für WPA gesicherte Netzwerke muss wpa_supplicant bemüht werden
https://wiki.ubuntuusers.de/WLAN/wpa_supplicant/

/etc/network/interfaces

# statische konfiguration
 auto wlan0
	iface wlan0 inet dhcp
	wpa-conf /etc/wpa.conf
/etc/wpa.conf
network={
        ssid="Netzwerkname"
        scan_ssid=1
        proto=RSN
        key_mgmt=WPA-PSK
        pairwise=CCMP
        group=CCMP
        psk="meinschluessel"
}
per Systemd

/etc/systemd/network/20-wired.network


[Match]
Name=enp1s0

[Network]
Address=10.1.10.9/24
Gateway=10.1.10.1
DNS=10.1.10.1
#DNS=8.8.8.8
prüfen ob Device im Netz ist:
~$ ping -c 3 192.168.1.2
Benennung der Netzwerkschnittstelle
wlan0 wlan1 wlan2 ...
eth0 eth1 eth2 .. 
aktuelle Distributionen verw.
eno1 eno2 eno3 ...
ens1 ens2 ens3 ...
enp1s2 enp2s4 enp1s7 ...
wlp1s2 wlp2s8...