Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
admin_grundlagen:netzwerk [2011/08/08 08:43] ingo_wichmann [Gehen Pakete verloren?] |
admin_grundlagen:netzwerk [2024/08/18 15:21] (aktuell) ingo_wichmann |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== NetworkManager ausschalten ====== | + | ====== Netzwerk (temporär) einrichten ====== |
- | === SuSE 11.1 === | + | Während der Änderungen an der Netzwerkkonfiguration: |
- | ''/etc/sysconfig/network/config'' : | + | * ''ip monitor'' in seperatem Fenster laufen lassen (( |
- | <file> | + | ip monitor | grep -Ev '(PROBE|REACHABLE|STALE|DELAY)$' |
- | NETWORKMANAGER="no" | + | )) |
- | </file> | + | * [[network-manager]] temporär anhalten. |
- | SuSEconfig | + | |
- | /etc/init.d/network restart | + | |
- | === Debian 5.0 === | ||
- | update-rc.d -f network-manager remove | ||
- | /etc/init.d/network-manager stop | ||
- | ''/etc/network/interfaces'' : | ||
- | <file> | ||
- | auto eth0 | ||
- | </file> | ||
- | === Debian 6.0 === | + | ++++ veraltete Methode mit ifconfig & route | |
- | apt-get --purge remove network-manager | + | |
- | + | ||
- | ''/etc/network/interfaces'' : | + | |
- | <file> | + | |
- | auto eth0 | + | |
- | </file> | + | |
- | + | ||
- | === CentOS 5.3 === | + | |
- | chkconfig NetworkManager off | + | |
- | /etc/init.d/NetworkManager stop | + | |
- | + | ||
- | === Scientific Linux 6.0 === | + | |
- | yum remove NetworkManager | + | |
- | pkill dhclient | + | |
- | + | ||
- | ====== Netzwerk (temporär) einrichten ====== | + | |
- | ===== Traditionelle Methode mit ifconfig & route ===== | + | |
==== Arbeitsplatzrechner / Host ==== | ==== Arbeitsplatzrechner / Host ==== | ||
- | ifconfig eth0 10.0.1.217 broadcast 10.0.1.255 netmask 255.255.255.0 | + | ifconfig eth0 10.0.1.217/24 |
route add default gw 10.0.1.1 eth0 | route add default gw 10.0.1.1 eth0 | ||
==== Router ==== | ==== Router ==== | ||
- | ifconfig eth0 10.0.1.1 broadcast 10.0.1.255 netmask 255.255.255.0 | + | ifconfig eth0 10.0.1.1/24 |
- | ifconfig eth1 212.202.245.174 broadcast 212.202.245.175 netmask 255.255.255.252 | + | ifconfig eth1 212.202.245.174/30 |
route add default gw 212.202.245.173 eth1 | route add default gw 212.202.245.173 eth1 | ||
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 ==== | ||
+ | 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 | ||
- | ===== Methode mit ip ===== | ||
==== Router ==== | ==== Router ==== | ||
ip addr add 10.0.1.224/24 dev eth0 | ip addr add 10.0.1.224/24 dev eth0 | ||
Zeile 52: | 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 | ||
+ | sysctl -w net.ipv4.ip_forward=1 | ||
+ | |||
+ | === NAT mit iptables === | ||
iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE | iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE | ||
- | sysctl -w net.ipv4.ip_forward=1 | + | |
+ | === 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 ==== | ||
+ | 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? ===== | ===== Welches ist die richtige Netzwerkkarte? ===== | ||
... bzw. ist das Kabel in der richtigen Netzwerkkarte | ... bzw. ist das Kabel in der richtigen Netzwerkkarte | ||
Zeile 66: | Zeile 68: | ||
ethtool -p eth0 | 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 gesuchen Netzwerkkarte. | + | 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 | + | (( 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 ===== | ===== Welcher Treiber wird von der Netzwerkkarte genutzt ===== | ||
ethtool -i eth0 | ethtool -i eth0 | ||
+ | ===== Gibt es übermäßig viele Übertragungsfehler, Kollisionen? ===== | ||
+ | ip -s link | ||
===== Ist die IP-Adresse richtig eingestellt ===== | ===== Ist die IP-Adresse richtig eingestellt ===== | ||
- | ... bzw. gibt es übermäßig viele Übertragungsfehler, Kollisionen? | + | ip addr show |
- | ifconfig | + | |
+ | ===== Welches ist meine ausgehende IP-Adresse? ===== | ||
+ | ip route get 1.1.1.1 | cut -d ' ' -f7 | ||
===== Ist das Routing / der Gateway richtig eingestellt? ===== | ===== Ist das Routing / der Gateway richtig eingestellt? ===== | ||
- | route -n | + | ip route |
===== 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? ===== | ||
+ | ip neigh show | ||
+ | arping _gateway | ||
===== Gehen Pakete verloren? ===== | ===== Gehen Pakete verloren? ===== | ||
ping -f -s 1472 10.0.1.214 | ping -f -s 1472 10.0.1.214 | ||
- | Eine Übersicht über Verbindungsprobleme gibt auch: | + | Erzwingen des DONT-FRAGMENT Bits:((ping-Header 28 bytes. Deshalb 1500-28=1472)) |
- | netstat -ni | + | |
- | ===== Welches Kabel ist das Richtige? ===== | + | ping -s 1472 -M do 10.0.1.214 |
- | ping -a 10.0.1.214 | + | |
- | oder | + | |
- | ping 10.0.1.214 | while read; do echo -e -n "\007"; done | + | |
- | oder | + | |
- | ping 10.0.1.214 | while read; do echo -e "\007 $REPLY"; done | + | |
===== 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: | ||
+ | tracepath 81.169.176.98 | ||
+ | |||
+ | ===== Wie hoch ist der Durchsatz? ===== | ||
+ | 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 142: | Zeile 164: | ||
LEER | LEER | ||
- | ==== SuSE Firewall abschalten ==== | + | ==== SuSE Firewall abschalten ==== |
- | rcSuSEfirewall2 stop | + | === bis openSuSE Leap 42.3 === |
- | chkconfig SuSEfirewall2_setup off | + | systemctl disable --now SuSEfirewall2.service |
- | chkconfig SuSEfirewall2_init off | + | |
- | Prüfen: | + | === ab openSuSE 15.0 === |
- | chkconfig --list | + | systemctl disable --now firewalld.service |
- | ==== Fedora / RedHat Firewall abschalten ==== | + | ==== CentOS (bis 6) Firewall abschalten ==== |
- | /etc/init.d/iptables stop | + | service iptables stop |
chkconfig iptables off | chkconfig iptables off | ||
| | ||
Prüfen: | Prüfen: | ||
chkconfig --list | chkconfig --list | ||
+ | |||
+ | ==== CentOS (7) Firewall abschalten ==== | ||
+ | service firewalld stop | ||
+ | systemctl disable firewalld | ||
+ | | ||
+ | Prüfen: | ||
+ | systemctl status firewalld | ||
====== Netzwerk (dauerhaft) einrichten ====== | ====== Netzwerk (dauerhaft) einrichten ====== | ||
===== Server / Host ===== | ===== Server / Host ===== | ||
- | |||
==== Debian ==== | ==== Debian ==== | ||
''/etc/network/interfaces'' : | ''/etc/network/interfaces'' : | ||
Zeile 170: | Zeile 197: | ||
gateway 10.0.1.1 | gateway 10.0.1.1 | ||
</file> | </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 | /etc/init.d/networking restart | ||
+ | |||
==== SuSE ==== | ==== SuSE ==== | ||
+ | openSuSE 13.1 / SLES 11: | ||
''/etc/sysconfig/network/config'' : | ''/etc/sysconfig/network/config'' : | ||
<file>NETWORKMANAGER="no"</file> | <file>NETWORKMANAGER="no"</file> | ||
- | ''/etc/sysconfig/network/ifcfg-eth-id-00:a0:cc:d5:57:98'' | + | 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> | <file> | ||
BOOTPROTO='static' | BOOTPROTO='static' | ||
Zeile 196: | 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 205: | Zeile 257: | ||
NETMASK=255.255.255.0 | NETMASK=255.255.255.0 | ||
NETWORK=192.168.1.0 | NETWORK=192.168.1.0 | ||
+ | GATEWAY=192.168.1.1 | ||
+ | DNS1=192.168.1.6 | ||
ONBOOT=yes | ONBOOT=yes | ||
TYPE=Ethernet | TYPE=Ethernet | ||
</file> | </file> | ||
- | Die Netzwerkkonfigurationsdateien kann man mit dem Tool ''system-config-network'' erstellen | + | Die Netzwerkkonfigurationsdateien kann man bis CentOS 6 mit dem Tool ''system-config-network'' erstellen, ab CentOS 7 mit [[network-manager]] |
- | ===== Router ===== | + | Doku siehe ''/usr/share/doc/initscripts-*/sysconfig.txt'' |
- | ''/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/static-routes'' : | + | |
- | <file> | + | |
- | any net 192.168.2.0/28 gw 192.168.1.212 | + | |
- | </file> | + | |
+ | ====== 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 ====== | ====== Dokumentation ====== | ||
Zeile 256: | Zeile 280: | ||
* [[ http://www.novell.com/documentation/opensuse103/opensuse103_reference/data/sec_basicnet_manconf.html | openSuSE 10.3 ]] | * [[ http://www.novell.com/documentation/opensuse103/opensuse103_reference/data/sec_basicnet_manconf.html | openSuSE 10.3 ]] | ||
- | ====== Rechenhilfe für IP-Adressen und Netzmasken ====== | + | * [[ http://www.lug-erding.de/vortrag/ng.html | Netzwerk Grundlagen für Linux ]] |
- | Debian | + | * [[ http://www.netzmafia.de/skripten/netze/ | Netzwerk Protokolle im Detail ]] |
- | ipcalc 212.202.245.174/30 | + | |
- | SuSE | + | |
- | iptab | + | |
- | ... oder übers Web http://jodies.de/ipcalc | + | |
- | ====== routing für fortgeschrittene====== | + | * [[ http://de.opensuse.org/SDB:IPv6_dauerhaft_ausschalten | SuSE / IPv6 ausschalten ]] |
- | * http://lartc.org/howto/ | + | * [[ http://lartc.org/howto/ | routing für Fortgeschrittene]] |
- | ====== IPv6 abschalten ====== | ||
- | |||
- | Man erkennt aktiviertes IPv6 daran, dass das Modul ipv6 geladen ist. | ||
- | |||
- | lsmod | grep ipv6 | ||
- | |||
- | ''/etc/modutils/aliases'' : ( Debian Sarge mit Kernel 2.4 ) | ||
- | |||
- | ''/etc/modprobe.d/aliases'' : ( Debian mit Kernel 2.6 ) | ||
- | |||
- | ''/etc/modprobe.conf.local'' : ( SuSE ) | ||
- | <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 | ||
- | |||
- | Debian Sarge mit Kernel 2.4 benötigt dann noch ein | ||
- | update-modules | ||
- | |||
- | |||
- | ====== Netzwerkdienste ====== | ||
- | Welche Ports sind offen? Welche Netzwerkdienste sind aktiv? | ||
- | |||
- | lsof -i | ||
- | netstat -tulpen | ||
- | |||
- | ===== Wireless LAN ===== | ||
- | 498 ifconfig wlan0 | ||
- | 499 iwconfig wlan0 | ||
- | 500 iwlist wlan0 scan | ||
- | 501 ifconfig wlan0 up | ||
- | 502 iwlist wlan0 scan | ||
- | 503 iwconfig wlan0 | ||
- | 504 iwconfig wlan0 essid linuxhotel | ||
- | 505 iwconfig wlan0 | ||
- | 506 man dhclient3 | ||
- | 507 dhclient wlan0 | ||
- | |||
- | |||
- | ====== Dokumentation ====== | ||
- | |||
- | * [[ http://ipsysctl-tutorial.frozentux.net/ipsysctl-tutorial.html | Sysctl Tutorial ]] | ||
- | * [[ http://www.netzmafia.de/skripten/netze/ | Netzwerk Grundlagen ]] | ||
- | * [[ http://de.opensuse.org/SDB:IPv6_dauerhaft_ausschalten | SuSE / IPv6 ausschalten ]] | ||