Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
admin_grundlagen:netzwerk [2018/09/03 09:45] ingo_wichmann [Gehen Pakete verloren?] |
admin_grundlagen:netzwerk [2024/08/18 15:21] (aktuell) ingo_wichmann |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Netzwerk (temporär) einrichten ====== | ====== Netzwerk (temporär) einrichten ====== | ||
- | [[network-manager]] temporär anhalten. | + | 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 | |
- | ===== Traditionelle Methode mit ifconfig & route ===== | + | |
==== Arbeitsplatzrechner / Host ==== | ==== Arbeitsplatzrechner / Host ==== | ||
ifconfig eth0 10.0.1.217/24 | ifconfig eth0 10.0.1.217/24 | ||
Zeile 14: | Zeile 18: | ||
iptables -t nat -I POSTROUTING -o eth1 -j MASQUERADE | iptables -t nat -I POSTROUTING -o eth1 -j MASQUERADE | ||
sysctl -w net.ipv4.ip_forward=1 | sysctl -w net.ipv4.ip_forward=1 | ||
- | )) | + | ++++ |
==== Host ==== | ==== Host ==== | ||
Zeile 27: | Zeile 31: | ||
ip link set dev eth2 up | ip link set dev eth2 up | ||
ip route add default via 192.168.1.1 dev eth2 | ip route add default via 192.168.1.1 dev eth2 | ||
- | iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE | ||
sysctl -w net.ipv4.ip_forward=1 | 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 ====== | ====== Checkliste Netzwerk ====== | ||
===== Ist das Kabel eingesteckt? ===== | ===== Ist das Kabel eingesteckt? ===== | ||
- | mii-tool | ||
- | oder | ||
ethtool | ethtool | ||
+ | (( oder früher: | ||
+ | mii-tool | ||
+ | )) | ||
==== Speed einstellen ==== | ==== Speed einstellen ==== | ||
mii-diag -F 100baseTx eth0 | mii-diag -F 100baseTx eth0 | ||
ethtool -s eth0 speed 100 duplex full | 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? ===== | ===== Welches ist die richtige Netzwerkkarte? ===== | ||
... bzw. ist das Kabel in der richtigen Netzwerkkarte | ... bzw. ist das Kabel in der richtigen Netzwerkkarte | ||
Zeile 64: | Zeile 88: | ||
===== Ist der andere Rechner erreichbar? ===== | ===== Ist der andere Rechner erreichbar? ===== | ||
ping 10.0.1.214 | ping 10.0.1.214 | ||
+ | |||
+ | ===== Welches Kabel ist das Richtige? ===== | ||
+ | ping -a 10.0.1.214 | ||
===== Ist das Gateway erreichbar? ===== | ===== Ist das Gateway erreichbar? ===== | ||
ip neigh show | ip neigh show | ||
+ | arping _gateway | ||
===== Gehen Pakete verloren? ===== | ===== Gehen Pakete verloren? ===== | ||
Zeile 74: | Zeile 102: | ||
ping -s 1472 -M do 10.0.1.214 | ping -s 1472 -M do 10.0.1.214 | ||
- | |||
- | ===== Welches Kabel ist das Richtige? ===== | ||
- | ping -a 10.0.1.214 | ||
===== Bis zu welchem Router laufen die Pakete ===== | ===== Bis zu welchem Router laufen die Pakete ===== | ||
traceroute 81.169.176.98 | traceroute 81.169.176.98 | ||
traceroute -T -p 80 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: | Wird die MTU irgendwo auf dem Weg begrenzt: | ||
tracepath 81.169.176.98 | tracepath 81.169.176.98 | ||
- | ==== packet lost? ==== | + | ===== Wie hoch ist der Durchsatz? ===== |
- | mtr 81.169.176.98 | + | Server: |
+ | iperf -s | ||
+ | |||
+ | Client: | ||
+ | iperf -c 192.168.1.200 | ||
===== Sind Firewall-Regeln aktiv? ===== | ===== Sind Firewall-Regeln aktiv? ===== | ||
+ | ==== Netfilter ==== | ||
+ | nft list ruleset | ||
+ | |||
+ | ==== iptables ==== | ||
iptables -L -n | iptables -L -n | ||
Zeile 211: | Zeile 246: | ||
==== RedHat ==== | ==== RedHat ==== | ||
+ | ab RedHat 9 abgekündigt, besser [[network-manager]] nativ verwenden. | ||
+ | |||
''/etc/sysconfig/network-scripts/ifcfg-eth0'' | ''/etc/sysconfig/network-scripts/ifcfg-eth0'' | ||
<file> | <file> | ||
Zeile 229: | Zeile 266: | ||
Doku siehe ''/usr/share/doc/initscripts-*/sysconfig.txt'' | Doku siehe ''/usr/share/doc/initscripts-*/sysconfig.txt'' | ||
- | ===== Router ===== | ||
- | ''/etc/sysctl.conf'' : | ||
- | <file>net.ipv4.ip_forward = 1</file> | ||
- | Unter SuSE besser Datei ''/etc/sysconfig/sysctl'' nutzen | ||
- | |||
- | |||
- | ==== Debian ==== | ||
- | ''/etc/network/interfaces'' mit mehreren Netzwerkkarten: | ||
- | ( veraltet, heute mit [[udev]] besser lösbar ) | ||
- | <file> | ||
- | auto eth0 eth1 | ||
- | mapping eth0 eth1 | ||
- | script /usr/local/bin/get-mac-address.sh | ||
- | map 00:0A:E6:5A:75:A5 extern | ||
- | map 00:11:6B:31:4F:59 intern | ||
- | |||
- | iface extern inet static | ||
- | address 212.202.245.174 | ||
- | broadcast 212.202.245.175 | ||
- | netmask 255.255.255.252 | ||
- | gateway 212.202.245.173 | ||
- | pre-up iptables -t nat -I POSTROUTING -o eth1 -j MASQUERADE | ||
- | |||
- | iface intern inet static | ||
- | address 192.168.1.7 | ||
- | netmask 255.255.255.0 | ||
- | network 192.168.1.0 | ||
- | broadcast 192.168.1.255 | ||
- | </file> | ||
- | |||
- | Eine andere ( bessere? ) Möglichkeit zur eindeutigen Benennung von Netzwerkkarten bietet das Paket ''ifrename'' | ||
- | |||
- | |||
- | ==== CentOS ==== | ||
- | ''/etc/sysconfig/network-scripts/route-eth0'' | ||
- | <file> | ||
- | X.X.X.X/Y via X.X.X.X dev interface | ||
- | </file> | ||
- | |||
- | |||
- | |||
- | |||
====== Rechenhilfe für IP-Adressen und Netzmasken ====== | ====== Rechenhilfe für IP-Adressen und Netzmasken ====== | ||
- | Debian | + | Debian: |
- | ipcalc 212.202.245.174/30 | + | subnetcalc 212.202.245.174/30 |
- | SuSE | + | subnetcalc subnetcalc 2a0f:6480:1::1/48 |
- | iptab | + | |
- | ... oder übers Web http://jodies.de/ipcalc | + | |
- | ====== Predict Predictionable Names ====== | + | ====== Predict Predictable Network Interface Names ====== |
Problem: Wie nennt sich die Netzwerk-Schnittstelle in einem anderen Namensschema: | Problem: Wie nennt sich die Netzwerk-Schnittstelle in einem anderen Namensschema: | ||
udevadm test-builtin net_id /sys/class/net/eth0 | udevadm test-builtin net_id /sys/class/net/eth0 | ||
- | ====== IPv6 abschalten ====== | ||
- | //Todo: testen ob das noch geht.// | ||
- | (( Bei openSuSE 12.3 und debian 6 z.B. ist ipv6 nicht als Modul kompiliert: | ||
- | grep CONFIG_IPV6= /boot/config-* | ||
- | )) | ||
- | |||
- | Man erkennt aktiviertes IPv6 daran, dass das Modul ipv6 geladen ist. | ||
- | |||
- | lsmod | grep ipv6 | ||
- | |||
- | ''/etc/modprobe.d/aliases.conf'' : ( Debian 6 ) | ||
- | |||
- | ''/etc/modprobe.d/99-local.conf'' : ( openSuSE 12.3 ) | ||
- | <file>alias net-pf-10 off # IPv6</file> | ||
- | |||
- | Soll auch das manuelle Laden des Modules verhindert werden, kann auch noch folgende Zeile eingetragen werden: | ||
- | <file>alias ipv6 off </file> | ||
- | |||
- | depmod -a | ||
- | |||
- | === Testen === | ||
- | Zeigt ''modprobe'' die Einstellungen richtig an: | ||
- | modprobe -c | grep -i ipv6 | ||
- | Wird nach einem reboot das IPv6-Modul automatisch geladen: | ||
- | reboot | ||
- | lsmod | grep ipv6 | ||
- | ====== Wireless LAN ====== | ||
- | ifconfig wlan0 | ||
- | iwconfig wlan0 | ||
- | iwlist wlan0 scan | ||
- | ifconfig wlan0 up | ||
- | iwlist wlan0 scan | ||
- | iwconfig wlan0 | ||
- | iwconfig wlan0 essid linuxhotel | ||
- | iwconfig wlan0 | ||
- | man dhclient3 | ||
- | dhclient wlan0 | ||
- | |||
====== Dokumentation ====== | ====== Dokumentation ====== |