# CentOS Server
Installieren ganz normal
Nach der Installation:
Hostnamen festlegen
`hostnamectl set-hostname centos-server.linux.local`
## Netzwerkkonfiguration
Es gibt skripte mit denen die Netzwerkkonfigurationen vorgenommen werden können.
`/etc/sysconfig/network-scripts`
Konfigdatei: ifcfg-eth0 (Kann unterschiedlich heißen)
in der Datei steht unter ONBOOT = no dadurch wird der DHCP beim Boot nicht geladen.
um die neuen Einstellungen zu aktivieren muss man den service neu starten.
`service network restart`
### Statische IP-Adresse einstellen
ifcfg-eth0
```
BOOTPROTO=static
IPADDR=172.16.1.25
NETMASK=255.255.255.0
GATEWAY=172.16.1.1
#DEFROUTE=yes (auskommentieren)
#IPV6 (auskommentieren)
```
### DNS Server Anlegen
/etc/resolf.conf
```
nameserver 8.8.8.8
```
## Pfadparameter
`which cat` gibt den Parameter zu dem Programm zurück. Damit kann man nachschauen, wo programme gespeichert werden.
### Umgebgungsvariablen
`$PATH`
### Umgebungsvariable anpassen
`export PATH=$PATH:~/bin` Setzt die Variable auf den bisherigen Inhalt plus `~/bin`
Diese Variable werden nur Temporär gespeichert
Damit auch überall die Umgebungsvariablen verwendet werden geht man folgendermaßen vor:
Ein Terminal hat **Startup files** in der das abgespeichert werden kann.
`.bashrc` muss umb den Befehl `export PATH=$PATH:~/bin` erweitert werden. Dann funktionert das überall.
## Paketmanager
in CentOs wird **Yum** als Paketmanager verwendet
```
yum install htop
# Paketquelle aktualisieren
# Weiteres Reposotry
yum install epel-release
yum remove htop
yum downgrade htop # Vorherige version
yum search php # suchen
yum install https://abc.npm # Damit kann man direkt von einer Website eine Datei installieren
```
## Texteditoren
### Nano
**Tastenkombination** | **Beschreibung** |
Strg + g | Hilfe |
Strg + k | Ausschneiden |
Strg + U | Einfügen |
Strg + W | Suchen |
ALT + a | Markieren
|
ALT + U | Rückgängig
|
ALT + Y | Highlighting ausschalten
|
**Nano Anpassen**
/etc/nanorc (global)
Für den jeweiligen Benutzer kann man im Homeverzeichnis eine datei erstellen und Einstellungen vornehmen: .nanorc
- set regexp (Reguläre expressions beim suchen verwenden)
- .\* um Wildcards zu verwenden
**Syntax Highlighting**
In CentOs muss das Highlighting durch Einkommentieren in der Datei: /etc/nanorc aktiviert werden
### Vim
**Tasten** | **Beschreibung** |
i | Einfügen (Bearbeiten) |
A | Einfügen am ende der Zeile |
o | Neue Zeile einfügen |
O | Über dem Corser eine neue Zeile einfügen |
dd | löscht eine ganze Zeile |
3 dd | löscht 3 Zeilen auf einmal |
u | Rückgängig machen |
v | Visual Mode: Markieren |
d | Markierten bereich ausschneiden |
p oder P | zum einfügen |
y | Kopieren |
:set number | Zeigt die Zeilennummer an |
:set nonumber | Zeilennummern ausblenden |
:set nocp | erweiterter Modus |
**Erweiterte Funktionen**
:3 | Springt in die Zeile |
G | Spring in die Letze Zeile |
0 (null) | Springt zum ersten Zeichen einer Zeile |
:x | Speichern und schließen |
/gulu
n
N
| Suchen nach gulu
zum nächsten suchergebnis
zum vorherigen Suchergebnis
|
:set ignorecase | Groß und Kleinschreibung bei der Suche ignorieren
|
| |
Die wichtigsten Grundeinstellungen vornehmen: `/home/benutzer/.vimrc` erstellen
- set nocp
- set number
- set ignorecase
Bessere vim version
**sudo install vim-runtime**
**sudo install vim-gnome** (Starten mit gvim)
## Shell-Umgebung
Dateien die die Shell konfiigurieren:
- /etc/profile
- /etc/bash.bashrc oder /etc/bashrc
### Variable erstellen
```
GREETING="Hallo Welt"
echo $GREETING
# Globale Variable erstellen
export GREETINGE="Hallo Welt"
echo $GREETINGE
# mit env kann man sich Umgebungsvariablen erstellen
# Variable entfernen
unset GREETINGE
```
## Standardprogramme
`update-alternatives --get-selections` (anzeigen)
`sudo update-alternatives --config editor` (Editor bearbeiten)
## Benutzerverwaltung
**Befehl** | **Beschreibung** |
sudo useradd asterix | Benutzer hinzufügen (nicht ideal, kein Homelaufwerk) |
sudo useradd -m -s /bin/bash -c "Kommentar" obelix | Benutzer erstellen
-m erstellt ein Homeverzeichnis
-s legt die Standard Shell fest
-c Erstellt einen Kommentar, im normalfall der Name
|
sudo passwd asterix | Erstellt ein Passwort für Asterix
|
sudo cp -r /etc/skel /home/asterix | Das Standard-Homeverzeichnis befindet sich in /etc/skel
mit dem befehl wird das Verzeichnis erstellt
|
sudo chown -R asterix:asterix /home/asterix | Das Homelaufwerk dem Nutzer asterix zuordnen
|
sudo usermod -s /bin/bash -c "kommentar" asterix | Um die restlichen Anpassungen vorzunehmen. Sie Erstellung obelix
|
**adduser falbala**
| user erstellen mit Optionen /etc/adduser.conf
|
**deluser --remove-all-files falbala** | User löschen mit optionen
|
### Benutzerinformationen
`/etc/passwd` Loginname:Passwort:User-ID:GruppenID:Kommentar:Home-verz.:Login-Shell
**Passwort** wird abgespeichert in
`/etc/shadow` Loginname:Hashwert(InklusiveSalt):LetztePasswortänderung:Min.anzahl.Passwortänderung:maxanzahl.passwortänderungen:Warnungpasswortablauf:::
**Shadow besser ansehen**
`chage -l asterix` Asterix anzeigen lassen
### Gruppen
`/etc/login.defs`
alle Gruppen sind zu finden in
`/etc/group`
Befehl |
|
groups | zeigt an in welcher gruppe der Benutzer ist |
groups hermann asterix |
|
id | Zeigt den User an |
grep hermann /etc/group | Zeigt an in welchen Gruppen der User ist |
groupadd projekt\_zaubertrank | erstellt eine neue Gruppe |
groupdell projekt\_zaubertrank | löscht die Gruppe |
groupadd -g 20000 projekt\_zaubertrank | erstellt eine Gruppe mit der ID 20000 |
groupadd projekt\_hinkelstein | wenn schon gruppen ids angelegt sind, dann wird die id ab 20000 aufgezählt |
usermod -G projekt\_zaubertrank asterix | fügt asterix der Gruppe hinzu |
usermod -g 10000 -G projekt\_zaubertrank idefix | fügt idefix zu Gruppe praktikanten und Zaubertrank hinzu
g gibt die Hauptgruppe an
G gibt weitere Gruppen an
|
## Dateien und Verzeichnisse
### Befehle zum anzeigen von Verzeichnissen
`ls -a` | Zeigt auch versteckte Dateien an |
`ls -F` | Zeigt an um welche Einträge es sich handelt
/ Verzeichnis
\* Ausführbare Datei
|
`ls -t` | Nach Änderung sortieren |
`ls -r ` | Rückwärts sortieren |
`ls -R` | Gesamtes Verzeichnis anzeigen |
`ls -d` | Verzeichnisse anzeigen |
`ls -ld /projekte` | Zeigt einen Eintrag genau an |
### Links
`ln liste.txt liste-hardlink.txt` | Erstellt einen Link liste-hardlink.txt auf die Datei liste.txt |
`ln -s /projekte/projekt_zaubertrank/zutaten/liste.txt liste-absolut` | erstellt einen link liste-absolut auf die Datei liste (softlink) |
### Archive
.tar | Tape-Archiver
ist ein Unkomprimiertes Archiv
|
`bunzip2 firefox.tar.bz2`
`bzip2 -d `
| Datei Entpacken |
`bzip2 firefox.tar` | Datei Komprimieren |
`gzip -d firefox.tar.gz` | Datei entpacken |
`tar -xf firefox.tar` | Datei entpacken |
`tar -cf datei1.pdf datei2.pdf` | Dateien zu einem Archiv zusammenfügen (cf = create file) |
`tar -czf firefox-gzip.tar.gz firefox`
`tar -cjf firefox-gzip.tar.bz2 firefox`
| Pakt den Ordner firefox in ein Archiv und komprimiert mit gzip
komprimierung mit bz2
|
`tar -xzf firefox-gzip.tar.gz`
`tar -xjf firefox-zip.tar.bz2`
| Entpacken der jeweiligen Archive
|
### Zugriffsrechte
`groupadd` | Gruppe hinzufügen |
`/etc/group` | Gruppen bearbeiten |
`chown miraculix:zaubertrank projekt_zaubertrank` | Verzeichniseigentümer ändern |
`chmod u=rwx,g+w,o-rx /projekte/projekt_zaubertrank` | Besitzer: Alle rechte
Gruppe erhält zusätzlich schreibrechte
Welt werden lese und Ausführungsrechte entzogen
|
`chmod o= /projekte/projekt_zaubertrank` | Welt werden alle Rechte entzogen
|
r = 4
w = 2
x = 1
| chmod 750 User alles / gruppe lesen und ausführen / alle nix
chmod 644 user lesen und schreiben / gruppe alle lesen
|
chown -R
| um rekursiv zu ändern
|
### Finden
`ls "02 - Erste Schritte"/` | Pfad anzeigen |
`ls *` | Zeigte alle unterodner und dateien im aktuellen Ordner an |
`ls \*/\.\.txt` | Zeigt alle dateien mit Fhem in allen unterordnern an. |
`find . -name "*.js"` | findet im aktuellen Pfad alles was im Namen ".js" enthält
|
`find . -size +1M` | findet alle Dateien die größer als 1 Megabyte sind
|
`find . -size +1M -and -name "*skype*"` | |
`find . -name "*.JPG" -delete` | findet alle Bilder und löscht sie (-iname wenn die groß und kleinschreibnung ignoriert werden soll)
|
`find . -maxdepth 1 -and -name "*.jpg" -or -name "*.cr3"` | Dadurch wird nur der aktuelle Ordner durchsucht
|
`find . -iname "ubuntu*.iso" 2>/dev/null` | |
`locate "*fhem*"` | Parameter: -i Groß und kleinschreibung
|
`sudo updatedb` | Datenbank von locate updaten
|
`locate -i --regex "ubuntu(.*).ISO"` | reguläre ausdrücke
|
`grep "money" *` | suche nach money im Ordner \*
|
`grep -E -i 'Subject:(.*)money' *` | Sucht nach allem was Subject: irgendewas Money beinhaltet
|
### Ersetzen
mit dem Programm sed kann man inhalt in datein ersetzen
`sed 's/Welt/Linux/' hallo.txt` | Ersetzt den Text Welt durch Linux
s = ersetzen
|
`sed 's/Welt/Linux/g' hallo.txt` | g = ersetzt alles (global) |
| mit dem Parameter -i wird die änderung **gespeichert** |
`sed "3d" hallo.txt` | Entfernt die 3. Zeile
$d entfernt die letzte Zeile
2,3d entfernt Zeile 2 und 3
'/CentOS/d' entfernt Zeilen in denen CentOS vorkommt
|
`sed -n 's/Ubuntu/Kubuntu/p' hallo.text` | zeigt nur die änderungen auf der Konsole an.
p = Zeigt Änderungen an
-n = Zeigt den ganzen text nicht an
|
### Reguläre audrücke
`sed -n 's/model/m/p' /proc/cpuinfo` | ersetzt Model durch m in der cpuinfo datei
|
`sed -n -E 's/model(\s*):(\s)//p' /proc/cpuinfo` | |
`sed -n -E 's/model name(\s*):(.*)@(.*)/\2/p' /proc/cpuinfo` | \\2 ersetzt den entfernten text mit der 2. Klammer |
Ausdrücke generieren: [https://regexr.com](https://regexr.com)
## Bootloader bearbeiten
Datei die zu bearbeiten ist: /etc/default/grub
grub\_timeout = Startmenü anzeigen
Änderungen übernehmen mti dem Befehl
```
grub-mkconfig -o /boot/grub/grub.cfg
```
CentOS
```
grub2-set-default 1 # setzt den Default wert auf 1
grub2-mkconfig -o /boot/grub2/grub.cfg
```
## Partitionierung
/dev | Gerätedateien |
fdisk -l /dev/sda | Fdisk erstellt partitionen in MBR |
fdisk /dev/sdb
p
n
p
w (schreibt die Änderung auf die Platte)
| Neue Partition erstellen
Speicherplatz festlegen: +2G erstellt eine 2 Gigabyte große
|
gdisk /dev/sdb
o
n
| mit Gdisk kann man GPT erstellen
erstellen einer neuen GPT Partitionstabelle
neue Partition anlegen
|
gdisk -l /dev/sdb
| zum überprüfen der Festplatte
|
### Dateisysteme
ext4 | Standard für Linux |
btrfs | Standard für Suse. Schnell aber fehleranfällig |
xfs | Alt, stabil |
zfs | Leistungsfähiges für Servern |
ntfs | Microsoft |
`blkid -o list` | Zeigt die Festplatten mit id an |
`lsblk ` | Übersicht über festplatten und partionen |
|
|
##### Dateiformate erstellen
`parted -l /dev/sdb` | Partitionen anschauen |
`mkswap /dev/sdb6` | Swap bereich erstellen (Auslagerungspartition) |
`swapon /dev/sdb6` | Swap aktivieren |
`cat /proc/swaps` | anzeigen welche partition als swap verwendet wird |
`mkfs.ext4 /dev/sdb1` | Formatieren in Ext4 |
`mkfs -t ext3 /dev/sdb2` | Formatieren in ext3 (andere schreibweise) |
`mkfs.xfs /dev/sdb4` | bei xfs muss vorher mit `apt install xfsprogs `das programm dafür installiert werden |
##### Partitionen überprüfen
fsck /dev/sdb1 | Prüfung der Partion. (Nur möglich, wenn nicht eingehängt) |
fsk -f /dev/sdb1 | Gleichzeitige Reparatur bei Fehlern und detailiertere Ausgabe |
|
|
##### Mounten
`mount -t xfs /dev/sdb5 /gulugulu` | mountet laufwerk im -t (Type) xfs mit der Partition sdb5 im Ordner /gulugulu |
`umount` | Unmounten von Laufwerken |
`mount /dev/sdb1 /gulugulu` | Ext4 wird automatisch erkannt und muss nicht angegeben werden. |
`/etc/fstab` | **Automatische** Mountpunkte festlegen
Typ: ext4, auto, swap
Optionen: defaults, rw,auto,relatime (man mount)
|
`mount -a ` | Einstellung von fstab übernehmen |
### Speicherplatz
`df ` | Diskfree |
`df -h` | Human readable |
`du -h ` | Diskusage |
`du -h /etc` | Ordner anzeigen |
`du -ha /etc` | Alle Dateien anzeigen |
`sudo du -h / | sort -h ` | Sortiert die Plattennutzung nach Größe |
`sudo du -h / 2>&1 | sort -hr | head -n5` | Die 5 größten Ordner anzeigen |
**Festplattenanalyse als Admin starten** `sudo baobab`
## Logical Volume Manager (LVM)

`apt install lvm2` | Unter Ubuntu installieren |
`fdisk -l ` | Datenträger überprüfen |
`pvcreate /dev/sdb1`
`pvcreate /dev/sdb2`
| Physical Volume create |
`pvs`
| übersicht |
`vgcreate system /dev/dsb1 /dev/sdc1`
| Volume Group erstellen |
`vgs`
| Volume Groups übersicht |
`lvcreate -L3g -n home system`
| Logical Volume erstellen
-L3g = Größe 3 GB
-n = Name
aus der Gruppe System
|
`lvs`
| Logical Volumes Übersicht
|
**Logical Volumes formatieren und mounten**
| |
`mkfs.ext4 /dev/system/home`
| das Logical Volume in ext4 formatieren
|
`mount /dev/system/home /home`
| das Volumen mounten
|
**Erweitern**
| |
`vgextend storage /dev/sdc3`
| dabei wird die Volume Group storage um eine weitere Partition erweitert
|
`umount /video`
| Vor dem einbinden muss das Volume unmounted werden
|
`lvresize -L 9g /dev/storrage/video`
| Die Größe wird auf 9 GB festgelegt.
mit -L +4g kann das Volume um 4 GB erweitert werden. (besser nicht verwenden)
|
`resize2fs /dev/storage/video 9g`
| Dateisystem anpassen
|
`mount /dev/storage/video /video`
| Zum einhängen
|
## USB-Speichersticks
`lsusb` | Alle angeschlossenen USB-Sticks anzeigen lassen |
`usb-devices` | Details anzeigen |
`dmesg` | gibt Kernel Informationen aus |
|
|
## Netzwerk-Kommunikation
**Wireshark installieren** Vorher Gnome Desktop installieren mit `yum groupinstall GNOME-Desktop`
GUI als Default einstellen: `systemctl set-default graphical.target`
Wirehark als root starten aus dem Terminal: `wireshark &`
### VLSM und CIDR
Variable Length Subnet Mask
Classless Inter-Domain Routing
### ARP und MAC-Adressen
Wireshark-Mitschnitt:
Capture Filter: host 192.168.1.15 and (arp or icmp) um ping oder ARP mitzuschneiden
`arp -d 192.168.1.15` löscht den Arp-Cache zu der Adresse
`arp -a` Arp-Cache anzeigen
`netstat -nr` Anzeige der Routing Tabelle
### TCP und UDP
**Aktive Ports anzeigen lassen** `sudo netstat -tlpn` zeigt alle Ports an
Alle Ports sind zu finden unter `nano /etc/services`
### IPv6

## Netzwerkeinstellungen
```
ip a # IP-Adressen anszeigen
ip l # Interfaces
ip r # Routingtabelle
ip n # ARP-Einträge
ss -t # Alle TCP verbindungen
route -n # Routingtabelle in numerischer Darstellung
sudo netstat -tulpn # Zeigt alle TCP/UDP verbindungen an
# Viele infos zusammengefasst
nmcli dev show
```
### DNS Resolver
Ist der Lokale DNS eintrag
Bearbeitung unter `/etc/resolf.conf`
### IP-Konfiguration im Terminal
`/etc/network/interfaces` | \# Einstellungen der Interfaces |
`/etc/netplan` | hier wird bestimmt wer die Konfiguration verwaltet
renderer: ist das Gerät was das Netzwerk verwaltet
|
`nmcli` | Konfiguration vor nehmen |
`nmcli connection edit Kabelgebundene Verbindung 1` | um das Interface Kabelgebundenen Verbindung 1 zu bearbeiten
|
`> help` | hilfe
|
`> print` | anzeigen
|
`> remove ipv4.addresses`
`> set ipv4.addresses 192.168.1.111/24`
| ipv4 adresse festlegen
|
`> set ipv4.gateway 192.168.1.1`
| Gateway ändern
|
`> remove ipv4.dns`
`> set ipv4.dns 8.8.8.8`
| DNS speidchern
|
`> save`
| Speichern
|
`> quit`
| Beenden
|
`nmcli connection down Kabelgebundene Verbindung 1`
`nmcli connection up Kabelgebundene Verbindung 1`
| Initialisieren
|
**CentOS**
| |
`cd /etc/libvirt/qemu/networks/autostart`
| wenn hier ein Link drin ist, dann ist das ein Interface was CentOS zu virtualisierungszwecken benötigt. Diese kann man löschen mit Beispielhaft: rm default.xml
Nach einem Neustart sind die Verbindungen nicht mehr vorhanden
|
`cd /etc/sysconfig/network-scripts/`
| beinhaltet die Netzwerkkonfiguration
|
`nano ifcfg-enp0s3`
| |
`nmcli connection modify enp0s3 ipv4.addresses 192.168.1.120/24 ipv4.gateway 192.168.1.200 ipv4.dns 8.8.8.8`
| Damit werden die Parameter gesetzt
|
`nmcli connection down enp0s3`
| |
`nmcli connection up enp0s3`
| |
`nmcli connection mod enp0s3 ipv4.method manual`
| um von Dynamisch auf Statisch umzuschalten
|
`nmcli dev`
| Anzeigen der Netzwerkverbindungen
|
### DNS Auflösung
Eigentlich mit nslookup. Das ist aber abgekündigt. Der Nachfolder ist host
`host www.google.de` | gibt das gleich wie nslookup wieder. |
`host -t ns google.de` | zeigt den zuständigen dns server an |
host 8.8.8.8 |
|
**DIG** | Umfangreicher lals host
|
dig www.google.de | |
dig @8.8.8.8 google.de ns |
|
dig @192.168.1.254 8.8.8.8 | Eigenen DNS SErver abfragen |
|
|
/etc/hosts in der Datei kann man locale Namensauflösungen hinterlegen
127.0.0.1 [www.gulugulu.com](https://www.gulugulu.com) gulugulu (Adresse und alias eingetragen)
### Hostnamen festlegen
uname -n | Hostnamen anzeigen |
uname -a | zeigt alles an |
hostname -f | fgdn wird aus /etc/hosts übernommen |
nano /etc/hosts | hier den namen anpassen
bsp: 192.168.1.3 mint.hp mint
|
nano /etc/hostname | mint |
hostname -F /etc/hostname |
|
**Moderne variante**
hostnamectl | zeigt alle sachen an |
hostnamectl set-hostname "Ubuntu Desktop" | Hostname ändern |
|
|
## Statische Routen
`ip route add 172.16.20.128/25 via 192.168.1.1 dev eth0` | Route festlegen des ausgehenden Interfaces |
`route add -net 172.16.20.128 netmask 255.255.255.0 gw 192.168.1.1` | |
route -n | zeigt an welche da |
**Kann in Ubuntu über die GUI in IPv4 unter Strecken eingetragen werden** | 172.16.20.0 | 25 | 192.168.1.20 |
nmcli conn edit Kabelgebundene Verbindung |
|
> print | ipv4.routes: zeigt die routen an |
> set ipv4.routes 10.10.10.0/24 192.168.1.1 | Bereich und Gateway |
> save |
|
> quit |
|
nmcli conn down Kabelbebundene Verbindung 1 |
|
nmcli conn up Kabelgebundene Verbindung 1 |
|
## DHCP Server und Cent Os
Installieren von DHCP
```
yum install dhcp -y
```
Sind im Server mehrere Netzwerkkarten vorhanden, binden wir den dhcp-Server an ein Interface. Dazu tragen wir in der **/etc/sysconfig/dhcpd** folgende Option ein:
```
# vim /etc/sysconfig/dhcpd
```
```
# Command line options here
DHCPDARGS=eth0
```
### Konfigurationsdatei bearbeiten
Anschließend wird die Konfigurationsdatei unter **/etc/dhcpd.conf** entsprechend den eigenen Anforderungen angelegt.
```
# vim /etc/dhcp/dhcpd.conf
```
1. [/etc/dhcp/dhcpd.conf](https://dokuwiki.nausch.org/doku.php/centos:dhcp_c6?do=export_code&codeblock=1 "Schnipsel herunterladen")
```
subnet 10.0.10.0 netmask 255.255.255.192 {
option routers 10.0.10.1;
option subnet-mask 255.255.255.192;
option nis-domain "nausch.org";
option domain-name "nausch.org";
option domain-search "dmz.nausch.org", "intra.nausch.org", "nausch.org";
option domain-name-servers 10.0.10.1;
option time-offset -18000; # Eastern Standard Time
option ntp-servers 10.0.10.1;
option log-servers 10.0.10.1;
range dynamic-bootp 10.0.10.50 10.0.10.62;
default-lease-time 21600;
max-lease-time 43200;
}
host pml010010
{ hardware ethernet 00:22:68:5C:A4:8A;
fixed-address 10.0.10.10;
}
```
### DHCP-Konfiguration überprüfen
Bevor wir nun unseren DHCP-Server das erste mal starten, überprüfen wir unsere Konfiguration mit:
```
# service dhcpd configtest
```
```
Syntax: OK
```
### DHCP-Server starten
Den ersten Start unseres DHCP-Server nehmen wir wie folgt vor.
```
# service dhcpd start
```
```
dhcpd starten: [ OK ]
```
## Fehlersuche im Netzwerk
1. Ping 8.8.8.8
2. ip a
3. ping default\_gateway
4. route -n
**routen bearbeiten**
```
sudo ip route del default via 192.168.1.1
sudo ip route add default via 192.168.1.254
# Diese Einstellung ist nicht dauerhaft
```
5\. traceroute 8.8.8.8
6\. ip n zeigt neighbors an