Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
| Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung | |||
|
lpi1:netzwerk [2020/01/23 12:16] |
lpi1:netzwerk [2024/08/18 15:21] (aktuell) |
||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== Netzwerk (temporär) einrichten ====== | ||
| + | Während der Änderungen an der Netzwerkkonfiguration: | ||
| + | * ''ip monitor'' in seperatem Fenster laufen lassen (( | ||
| + | ip monitor | grep -Ev '(PROBE|REACHABLE|STALE|DELAY)$' | ||
| + | )) | ||
| + | * [[network-manager]] temporär anhalten. | ||
| + | |||
| + | |||
| + | ++++ veraltete Methode mit ifconfig & route | | ||
| + | ==== Arbeitsplatzrechner / Host ==== | ||
| + | ifconfig eth0 10.0.1.217/24 | ||
| + | route add default gw 10.0.1.1 eth0 | ||
| + | |||
| + | ==== Router ==== | ||
| + | ifconfig eth0 10.0.1.1/24 | ||
| + | ifconfig eth1 212.202.245.174/30 | ||
| + | route add default gw 212.202.245.173 eth1 | ||
| + | iptables -t nat -I POSTROUTING -o eth1 -j MASQUERADE | ||
| + | sysctl -w net.ipv4.ip_forward=1 | ||
| + | ++++ | ||
| + | |||
| + | ==== 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 | ||
| + | (( oder früher: | ||
| + | mii-tool | ||
| + | )) | ||
| + | ==== 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. | ||
| + | |||
| + | (( 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 ;-) ) )) | ||
| + | |||
| + | ===== 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:((ping-Header 28 bytes. Deshalb 1500-28=1472)) | ||
| + | |||
| + | 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: | ||
| + | |||
| + | <file> | ||
| + | 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 | ||
| + | </file> | ||
| + | |||
| + | iptables abschalten | ||
| + | iptables-restore <<LEER | ||
| + | <file> | ||
| + | *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 | ||
| + | </file> | ||
| + | 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'' : | ||
| + | <file> | ||
| + | auto eth0 | ||
| + | |||
| + | iface eth0 inet static | ||
| + | address 10.0.1.217 | ||
| + | netmask 255.255.255.0 | ||
| + | gateway 10.0.1.1 | ||
| + | </file> | ||
| + | | ||
| + | service networking restart | ||
| + | |||
| + | ==== Ubuntu 12.04 ==== | ||
| + | ''/etc/network/interfaces'' : | ||
| + | <file> | ||
| + | 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 | ||
| + | </file> | ||
| + | | ||
| + | /etc/init.d/networking restart | ||
| + | |||
| + | |||
| + | ==== SuSE ==== | ||
| + | openSuSE 13.1 / SLES 11: | ||
| + | ''/etc/sysconfig/network/config'' : | ||
| + | <file>NETWORKMANAGER="no"</file> | ||
| + | |||
| + | 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 ) | ||
| + | <file> | ||
| + | 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' | ||
| + | </file> | ||
| + | |||
| + | 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'' | ||
| + | <file> | ||
| + | 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 | ||
| + | </file> | ||
| + | |||
| + | 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 ====== | ||
| + | * [[ http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-networkscripts-interfaces.html | centos 5 ]] | ||
| + | * [[ http://www.novell.com/documentation/opensuse103/opensuse103_reference/data/sec_basicnet_manconf.html | openSuSE 10.3 ]] | ||
| + | |||
| + | * [[ http://www.lug-erding.de/vortrag/ng.html | Netzwerk Grundlagen für Linux ]] | ||
| + | * [[ http://www.netzmafia.de/skripten/netze/ | Netzwerk Protokolle im Detail ]] | ||
| + | |||
| + | * [[ http://de.opensuse.org/SDB:IPv6_dauerhaft_ausschalten | SuSE / IPv6 ausschalten ]] | ||
| + | * [[ http://lartc.org/howto/ | routing für Fortgeschrittene]] | ||
| + | |||