====== Referenzkarte Netzwerk ======
{{page>templates:under_construction&nofooter}}
===== Abstract =====
Eine Schnellreferenz-Karte für tägliche Netzwerkaufgaben. Syntax
cmd notwendiger_Parameter [optionaler Parameter]
===== Grundlagen =====
==== CIDR ====
00000000.00000000.00000000.00000000 = 32
|-------|--------|--------|--------|
8 8 8 8
<- Leseweise 128 64 32 16 8 4 2 1 . 128 64 ...
* 255.255.255.0 /24 253 IP Adresse (255 - Netzwerkadresse .0 - Broadcast .255 = 253
* zum Umrechnen kann [[http://jodies.de/ipcalc|ipcalc]] hinzugezogen werden
==== Klasse A ====
* 255.0.0.0 /8, also 8 Netzwerk-Bits und 24 Host-Bits (32 - 8 = 24)
* 128 Netzwerke, 2 sind reseviert (0.0.0.0 Default-Route, 127.0.0.1 Loop-Device mit 127.0.0.1 Localhost)
* 2hoch 24 - 2 (netzwerkadresse und Broadcast) Host möglich.
==== Klasse B ====
* begint binaer mit 10 ( == 128 siehe oben))
* Adressbereich von 128.0.0.0 bis 191.255.255.255
==== Klasse C ====
* beginnt mit 110 ( 128 + 64 = 192, siehe oben)
* Adressbereich von 192.0.0.0 bis 223.255.255.255
==== Klasse D und E ====
* sehr selten, experimentell, reserviert als Multicast für Rechnergruppen und haben keinen Netzwerkanteil
* beginnt mit 1110 ( 128 + 64 + 32 = 224, siehe oben)
* Adressbereich 224.0.0.0 bis 238.255.255.255.0
==== Private Adressbereiche ====
Außerhalb des Internets
* Klasse A 10.0.0.0, Netzwerkmaske /8 bzw. 255.0.0.0
* nur ein netz
* Klasse B 172.16.0.0 bis 172.31.255.255, Netzwerkmaske /16 bzw. 255.255.0.0
* insgesamt 16 Netze
* Klasse C 192.168.0.0 bis 192.168.255.255, Netzwerkmaske /8 bzw. 255.255.255.0
* insgesamt 256 Netze ( 2 * 128 = 256)
===== Interfaces =====
ifconfig [interface] [adresse] [[optionen]]
ip link [show|list|ls] [device]
==== Beispiele ====
* Rosetta Stone ifconfig / ip
^ Aktion ^ ip ^ ifconfig / traditionell ^
|Interface ein- oder ausschalten | ifconfig [device] up''|''down | ip link set [device] up''|''down |
|Setzen einer IP-Adresse 192.168.3.1 Netzmaske 255.255.255.0 \\ und Boadcast (wird in beiden Fällen automatisch zugewiesen) \\ für das Interface eth0 | ip addr add 192.168.3.1/24 dev eth0 brd + | ifconfig eth0 192.168.3.1 netmask 255.255.255.0 |
|Erzeugen eines virtuellen Interfaces | ip addr add 192.168.3.1/24 dev eth0:0 brd + label eth0:1 ((die Anweisung //label// ist nur zur Kompatilität mit ifconfig))| ifconfig eth0:0 192.168.3.1 netmask 255.255.255.0 |
| Löschen eines virtuellen Interfaces | ip addr del 192.168.3.1/24 dev eth0:0 | ifconfig eth0:0 del 192.168.3.1 |
^ Routing ^^^
| Routing-Tabelle anzeigen | ip route | route -n ''|'' netstat -r |
| ein Standard-Gateway hinzufügen | ip route add default via [host IP''|''name] | route add default gw [host IP''|''name] |
|eine Standard-Gateway löschen | ip route del default | route del default |
| eine Route in ein Netz hinzufügen | ip route add [network]/[CIDR] via [gateway] | route add -net [network IP] [netmask] [device] |
| eine Route in ein Netz löschen | ip route del [network]/[CIDR] via [gateway] | route del -net [network IP] [netmask] [device] |
==== LowLevel ====
Cache der ARP Tabelle ausgeben, die Option -n verhindert die Namensauflösung.
cat /proc/net/arp
arp -n
Einträge bearbeiten:
arp -d IP
arp -s IP MAC
==== Geschwindigkeit prüfen und einstellen ====
mii-tool eth0
ethtool eth0
mii-tool -F 100baseTx-FD
mii-tool -F 10baseT-HD
ethtool -s eth0 speed 100 duplex full
ethtool -s eth0 speed 10 duplex half
===== Wireles LAN =====
wlanconfig
watch -n1 'cat /proc/net/wireless'
===== DNS =====
* Abfrage Hostname zu IP
host hostname [IP des Nameservers anstatt resolv.conf]
nslookup hostname [IP des Nameservers anstatt resolv.conf]
dig [@IP des Nameservers anstatt resolv.conf] [-t type] hostname
* Abfrage IP zu Hostname
host IP [IP des Nameservers anstatt resolv.conf]
nslookup IP [IP des Nameservers anstatt resolv.conf]
nslookup [@IP des Nameservers anstatt resolv.conf] -x IP
, whois nsquery
===== Bridging =====
* [[http://www.linuxfoundation.org/en/Net:Bridge|Dokumentation]], siehe auch ''/usr/share/doc/bridge-utils''
brctl addbr br0
brctl addif br0 eth0
Anschließend die IP-Adresse von eth0 auf br0 übertragen, eth0 auf 0.0.0.0 promisc setzen.
===== IP-Tables =====
Eine einfache Regel für NAT
iptables -t nat -A POSTROUTING -s 192.168.3.0/24 -o eth0 -j MASQUERADE
Das Kommando
echo 1 > /proc/sys/net/ipv4/ip_forward
aktiviert das Weiterleiten von IP-Verkehr. Feste Einstellung ist über /etc/sysctl.conf oder bei Debian ///etc/network/options// //ip_forward=yes// möglich
===== Monitoring =====
Alle lokalen TCP- und UDP-Dienste des Hosts anzeigen, //-c// für aktualisierende Anzeige (continuous, 1sec), //n// zeigt numerische Werte statt Namen
netstat -ltu[c][n]
oder eine schönere Ausgabe
watch -n0,5 'netstat -ltu[n]'
Aktuele Verbindungen und die zugehörigen Programme anzeigen((root-Rechte erforderlich))
watch -n0,5 'netstat -ptu[n]'
Geöffnete Dateien von Netzwerkverbindungen anzeigen (IPv4 und IPv6) ((zeigt nur eigene Verbindungen an, sonst mit root-Rechten aufrufen))
lsof -i
Netzwerkverkehr ansehen, optional Einfärben mit ccze
tcpdump -vvv [| ccze]
oder mit dem Programm //multitail//. Die Option -A zeigt de Inhalt von Paketen an.
===== Testen =====
==== Simple Chat ====
* ''netcat -l -p 1234''
* auf der anderen Seite ''netcat [ip|hostname] 1234''
==== Dateiübertragung ====
* ''cat [file] | netcat -l -p 1234''
* auf der anderen Seite ''netcat [ip|hostname] 1234 > [file]''
===== Sicherheit =====
Überwachung der Kombination IP- und MAC-Adresse.
aprwatch
==== SSH ====
* [[linux:ssh]]
==== OpenVPN ====
TODO
{{page>vcards:stefan_pampel&nofooter}}
{{tag>linux lpi netzwerk unvollständig}}