Inhaltsverzeichnis

Netzwerk (temporär) einrichten

Während der Änderungen an der Netzwerkkonfiguration:

veraltete Methode mit ifconfig & route

Host

ip link set dev eth0 up
ip addr add 192.168.1.224/24 dev eth0
ip route add default via 192.168.1.1 

Router

ip addr add 10.0.1.224/24 dev eth0
ip link set dev eth0 up
ip addr add 192.168.1.224/24 dev eth2
ip link set dev eth2 up
ip route add default via 192.168.1.1 dev eth2
sysctl -w net.ipv4.ip_forward=1

NAT mit iptables

iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE

NAT mit nftables

nft add table inet nat
nft add chain inet nat postrouting { type nat hook postrouting priority 100; policy accept; }
nft add rule inet nat postrouting counter masquerade

Checkliste Netzwerk

Ist das Kabel eingesteckt?

ethtool

2)

Speed einstellen

mii-diag -F 100baseTx eth0
ethtool -s eth0 speed 100 duplex full

Welche Netzwerkhardware habe ich?

PCI

lspci

Welchen Treiber brauche ich dafür:

lspci -s 02:00.0 -k

Welches Netzwerkdevice wird von diesem Treiber zur Verfügung gestellt:

ls /sys/module/iwlwifi/drivers/*:*/*:*/net

USB

lsusb

Welches ist die richtige Netzwerkkarte?

… bzw. ist das Kabel in der richtigen Netzwerkkarte

ethtool -p eth0

Wenn die Netzwerkkarte Lämpchen hat und der Treiber die Funktion unterstützt, dann blinken ein paar Sekunden lang die Lämpchen der gesuchten Netzwerkkarte.

3)

Welcher Treiber wird von der Netzwerkkarte genutzt

ethtool -i eth0

Gibt es übermäßig viele Übertragungsfehler, Kollisionen?

ip -s link

Ist die IP-Adresse richtig eingestellt

ip addr show

Welches ist meine ausgehende IP-Adresse?

ip route get 1.1.1.1 | cut -d ' ' -f7

Ist das Routing / der Gateway richtig eingestellt?

ip route

Ist der andere Rechner erreichbar?

ping 10.0.1.214

Welches Kabel ist das Richtige?

ping -a 10.0.1.214

Ist das Gateway erreichbar?

ip neigh show
arping _gateway

Gehen Pakete verloren?

ping -f -s 1472 10.0.1.214

Erzwingen des DONT-FRAGMENT Bits:4)

ping -s 1472 -M do 10.0.1.214

Bis zu welchem Router laufen die Pakete

traceroute 81.169.176.98
traceroute -T -p 80 81.169.176.98

oder

mtr 81.169.176.98

Wird die MTU irgendwo auf dem Weg begrenzt:

tracepath 81.169.176.98

Wie hoch ist der Durchsatz?

Server:

iperf -s

Client:

iperf -c 192.168.1.200

Sind Firewall-Regeln aktiv?

Netfilter

nft list ruleset

iptables

iptables -L -n
iptables -t nat -L -n

Ausgabe von iptables:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

iptables abschalten

iptables-restore <<LEER
*mangle
:PREROUTING ACCEPT
:INPUT ACCEPT
:FORWARD ACCEPT
:OUTPUT ACCEPT
:POSTROUTING ACCEPT
COMMIT
*nat
:PREROUTING ACCEPT
:POSTROUTING ACCEPT
:OUTPUT ACCEPT
COMMIT
*filter
:INPUT ACCEPT
:FORWARD ACCEPT
:OUTPUT ACCEPT
COMMIT
LEER

SuSE Firewall abschalten

bis openSuSE Leap 42.3

systemctl disable --now SuSEfirewall2.service

ab openSuSE 15.0

systemctl disable --now firewalld.service

CentOS (bis 6) Firewall abschalten

service iptables stop
chkconfig iptables off

Prüfen:

chkconfig --list

CentOS (7) Firewall abschalten

service firewalld stop
systemctl disable firewalld

Prüfen:

systemctl status firewalld

Netzwerk (dauerhaft) einrichten

Server / Host

Debian

/etc/network/interfaces :

auto eth0

iface eth0 inet static
  address 10.0.1.217
  netmask 255.255.255.0
  gateway 10.0.1.1
service networking restart

Ubuntu 12.04

/etc/network/interfaces :

auto eth0

iface eth0 inet static
  address 10.0.1.217
  netmask 255.255.255.0
  gateway 10.0.1.1
  dns-nameservers 192.168.1.6
  dns-search linuxhotel.de
/etc/init.d/networking restart

SuSE

openSuSE 13.1 / SLES 11: /etc/sysconfig/network/config :

NETWORKMANAGER="no"

openSuSE 42.1(?) / SLES 12:

systemctl stop NetworkManager 
systemctl disable NetworkManager 
systemctl enable wicked.service 
systemctl start wicked.service 

/etc/sysconfig/network/ifcfg-eth0 : ( ab openSuSE 11.4 )

BOOTPROTO='static'
BROADCAST=''
IPADDR='192.168.1.202'
MTU=''
NAME='Uniwill VT6102 [Rhine-II]'
NETMASK='255.255.255.0'
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='auto'
UNIQUE='rBUF.weGuQ9ywYPF'
USERCONTROL='no'
_nm_name='bus-pci-0000:00:12.0'

Diese Dateien werden i.d.R. mit YaST erstellt ( siehe /etc/sysconfig/network/ifcfg.template )

RedHat

ab RedHat 9 abgekündigt, besser network-manager nativ verwenden.

/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.1.255
HWADDR=00:A0:CC:DE:13:A6
IPADDR=192.168.1.214
NETMASK=255.255.255.0
NETWORK=192.168.1.0
GATEWAY=192.168.1.1
DNS1=192.168.1.6
ONBOOT=yes
TYPE=Ethernet

Die Netzwerkkonfigurationsdateien kann man bis CentOS 6 mit dem Tool system-config-network erstellen, ab CentOS 7 mit network-manager

Doku siehe /usr/share/doc/initscripts-*/sysconfig.txt

Rechenhilfe für IP-Adressen und Netzmasken

Debian:

subnetcalc 212.202.245.174/30
subnetcalc subnetcalc 2a0f:6480:1::1/48

Predict Predictable Network Interface Names

Problem: Wie nennt sich die Netzwerk-Schnittstelle in einem anderen Namensschema:

udevadm test-builtin net_id /sys/class/net/eth0

Dokumentation

1)
ip monitor | grep -Ev '(PROBE|REACHABLE|STALE|DELAY)$'
2)
oder früher:
mii-tool
3)
Achtung OpenSuSE 11.1 bitte nicht während des Tests das Kabel ziehen –> Tastaturtod
(auch Debian und generell 2.6er Kernel reagieren so. Man muss dazu noch nicht mal das Kabel ziehen ;-) )
4)
ping-Header 28 bytes. Deshalb 1500-28=1472