Netzwerktools
dig
Der Terminal-Befehl dig liefert alle DNS-Informationen zu einer bestimmten Domain. Die möglichen Optionen liefert dig -h:
friedmar@fhubuntu:~$ dig -h Usage: dig [@global-server] [domain] [q-type] [q-class] {q-opt} {global-d-opt} host [@local-server] {local-d-opt} [ host [@local-server] {local-d-opt} [...]] Where: domain is in the Domain Name System q-class is one of (in,hs,ch,...) [default: in] q-type is one of (a,any,mx,ns,soa,hinfo,axfr,txt,...) [default:a] (Use ixfr=version for type ixfr) q-opt is one of: -x dot-notation (shortcut for reverse lookups) -i (use IP6.INT for IPv6 reverse lookups) -f filename (batch mode) -b address[#port] (bind to source address/port) -p port (specify port number) -q name (specify query name) -t type (specify query type) -c class (specify query class) -k keyfile (specify tsig key file) -y [hmac:]name:key (specify named base64 tsig key) -4 (use IPv4 query transport only) -6 (use IPv6 query transport only) -m (enable memory usage debugging) d-opt is of the form +keyword[=value], where keyword is: +[no]vc (TCP mode) +[no]tcp (TCP mode, alternate syntax) +time=### (Set query timeout) [5] +tries=### (Set number of UDP attempts) [3] +retry=### (Set number of UDP retries) [2] +domain=### (Set default domainname) +bufsize=### (Set EDNS0 Max UDP packet size) +ndots=### (Set NDOTS value) +edns=### (Set EDNS version) +[no]search (Set whether to use searchlist) +[no]showsearch (Search with intermediate results) +[no]defname (Ditto) +[no]recurse (Recursive mode) +[no]ignore (Don't revert to TCP for TC responses.) +[no]fail (Don't try next server on SERVFAIL) +[no]besteffort (Try to parse even illegal messages) +[no]aaonly (Set AA flag in query (+[no]aaflag)) +[no]adflag (Set AD flag in query) +[no]cdflag (Set CD flag in query) +[no]cl (Control display of class in records) +[no]cmd (Control display of command line) +[no]comments (Control display of comment lines) +[no]question (Control display of question) +[no]answer (Control display of answer) +[no]authority (Control display of authority) +[no]additional (Control display of additional) +[no]stats (Control display of statistics) +[no]short (Disable everything except short form of answer) +[no]ttlid (Control display of ttls in records) +[no]all (Set or clear all display flags) +[no]qr (Print question before sending) +[no]nssearch (Search all authoritative nameservers) +[no]identify (ID responders in short answers) +[no]trace (Trace delegation down from root) +[no]dnssec (Request DNSSEC records) +[no]nsid (Request Name Server ID) +[no]sigchase (Chase DNSSEC signatures) +trusted-key=#### (Trusted Key when chasing DNSSEC sigs) +[no]topdown (Do DNSSEC validation top down mode) +[no]multiline (Print records in an expanded format) global d-opts and servers (before host name) affect all queries. local d-opts and servers (after host name) affect only that lookup. -h (print help and exit) -v (print version and exit)
Eine erste Information für die Auflösung eines Internetnamens liefert bereits die Syntax dig host:
friedmar@fhubuntu:~$ dig wiki.bf1705.de ; <<>> DiG 9.7.3 <<>> wiki.bf1705.de ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 3902 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2 ;; QUESTION SECTION: ;wiki.bf1705.de. IN A ;; ANSWER SECTION: wiki.bf1705.de. 1510 IN A 82.165.48.237 ;; AUTHORITY SECTION: bf1705.de. 60436 IN NS ns66.1und1.de. bf1705.de. 60436 IN NS ns65.1und1.de. ;; ADDITIONAL SECTION: ns65.1und1.de. 1562 IN A 217.160.82.171 ns66.1und1.de. 1562 IN A 217.160.83.171 ;; Query time: 10 msec ;; SERVER: 192.168.178.1#53(192.168.178.1) ;; WHEN: Sun Jul 24 19:21:39 2011 ;; MSG SIZE rcvd: 124
ifconfig
Für Windows-User ist es der Kommandozeilenbefehl ipconfig bzw. ipconfig /all, um an die aktuellen Netzwerkinformationen zu kommen. Linux-User kennen den Terminal-Befehl ifconfig als passendes Gegenstück. Alle möglichen Eingabeoptionen liefert uns die Eingabe ifconfig --help:
friedmar@fhubuntu:~$ sudo ifconfig --help Aufruf: ifconfig [-a] [-v] [-s] <interface> [[<AF>] <adresse>] [add <Adresse>[/<Präfixlänge>]] [del <Adresse>[/<Präfixlänge>]] [[-]broadcast [<Adresse>]] [[-]pointopoint [<Adresse>]] [netmask <Adresse>] [dstaddr <Adresse>] [tunnel <Adresse>] [outfill <NN>] [keepalive <NN>] [hw <HW> <Adresse>] [metric <NN>] [mtu <NN>] [[-]trailers] [[-]arp] [[-]allmulti] [multicast] [[-]promisc] [mem_start <NN>] [io_addr <NN>] [irq <NN>] [media <Typ>] [txqueuelen <Länge>] [[-]dynamic] [up|down] ... <HW>=Hardwaretyp. Liste möglicher Hardwaretypen: loop (Lokale Schleife) slip (Serielle IP) cslip (Serielle VJ-IP) slip6 (6-bit Serielle IP) cslip6 (VJ 6-bit Serielle IP) adaptive (Adaptive Serielle IP) strip (Metricom Starmode IP) ash (Ash) ether (Ethernet) tr (16/4 Mb/s Token-Ring) tr (16/4 Mb/s Token-Ring (neu)) ax25 (AMPR AX.25) netrom (AMPR NET/ROM) rose (AMPR ROSE) tunnel (IPIP Tunnel) ppp (Punkt-zu-Punkt-Verbindung) hdlc ((Cisco)-HDLC) lapb (LAPB) arcnet (ARCnet) dlci (Frame Relay DLCI) frad (Frame Relay Access Device) sit (IPv6-nach-IPv4) fddi (Fiber Distributed Data Interface) hippi (HIPPI) irda (IrLAP) ec (Econet) x25 (Generisches X.25) eui64 (Generisches EUI-64) <AF>=Adressfamilie. Standardwert: inet List der möglichen Adressfamilien: unix (UNIX-Domain) inet (DARPA-Internet) inet6 (IPv6) ax25 (AMPR AX.25) netrom (AMPR NET/ROM) rose (AMPR ROSE) ipx (Novell IPX) ddp (Appletalk DDP) ec (Econet) ash (Ash) x25 (CCITT X.25)
In der Regel interessiert uns, ob und welche Einstellungen DHCP beim Start des Betriebssystems liefert. Wurde einer bestimmten Netzwerkschnittstelle eine IP-Adresse zugewiesen, wurden Broadcast, Subnetz-Maske, Vorgaberoute und primärer DNS-Eintrag initialisiert? Wer den Gerätename der aktiven Netzwerkschnittstelle kennt wählt als Syntax ifconfig <interface>, mit ifconfig kommt man natürlich auch zum gewünschten Erfolg:
friedmar@fhubuntu:~$ sudo ifconfig wlan0 wlan0 Link encap:Ethernet Hardware Adresse 00:ff:00:ff:00:ff inet Adresse:192.168.178.32 Bcast:192.168.178.255 Maske:255.255.255.0 inet6-Adresse: fe80::f27b:cbff:fe44:523e/64 Gültigkeitsbereich:Verbindung UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1 RX packets:20463 errors:0 dropped:0 overruns:0 frame:0 TX packets:19136 errors:0 dropped:0 overruns:0 carrier:0 Kollisionen:0 Sendewarteschlangenlänge:1000 RX bytes:14146926 (14.1 MB) TX bytes:4207061 (4.2 MB)
iwconfig
Die Eingabe von iwconfig im Terminal beantwortet schnell den Devise-Namen für den WLAN-Adapter. In meinem Fall ist wlan0 ein WLAN-Gerät:
friedmar@fhubuntu:~$ sudo iwconfig lo no wireless extensions. eth0 no wireless extensions. wlan0 IEEE 802.11bgn ESSID:"sbf1705" Mode:Managed Frequency:2.412 GHz Access Point: 00:FF:00:FF:00:FF Bit Rate=162 Mb/s Tx-Power=14 dBm Retry long limit:7 RTS thr:off Fragment thr:off Power Management:off Link Quality=70/70 Signal level=-33 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:11 Invalid misc:18 Missed beacon:0
Zur Beachtung: Ich habe mir erlaubt, die MAC-Adresse meiner WLAN-Karte zu türken.
iwlist
Wer schon einmal Probleme mit der Verbindungsaufnahme über WLAN hatte, für den ist der Befehl iwlist sehr hilfreich. Der Aufruf von iwlist <interface> scan im Terminal beantwortet schon einmal die Frage, ob das Interface überhaupt aktiv ist und welche Wireless Access Points im Umfeld empfangen werden.
friedmar@fhubuntu:~$ sudo iwlist wlan0 scan wlan0 Scan completed : Cell 01 - Address: 00:FF:00:FF:00:FF Channel:1 Frequency:2.412 GHz (Channel 1) Quality=70/70 Signal level=-33 dBm Encryption key:on ESSID:"<essid>" Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s 9 Mb/s; 12 Mb/s; 18 Mb/s Bit Rates:24 Mb/s; 36 Mb/s; 48 Mb/s; 54 Mb/s Mode:Master Extra:tsf=00000006c36ee180 Extra: Last beacon: 17750ms ago IE: Unknown: 000773626631373035 IE: Unknown: 010882848B960C121824 IE: Unknown: 030101 IE: IEEE 802.11i/WPA2 Version 1 Group Cipher : CCMP Pairwise Ciphers (1) : CCMP Authentication Suites (1) : PSK IE: Unknown: 2A0100 IE: Unknown: 32043048606C IE: Unknown: DD180050F2020101820003A4000027A4000042435E0062322F00 IE: Unknown: 2D1ACE131BFFFF000000000000000000000000000000000000000000 IE: Unknown: 3D16010D0A00000000000000000000000000000000000000 IE: Unknown: DD0900037F01010000FF7F IE: Unknown: DD0A00037F04010020000000 IE: Unknown:
iftop
iftop ist ein Kommandozeilenwerkzeug zum Überwachen des Netzwerkverkehrs (Traffic) in Echtzeit. Es listet alle Verbindungen einer Netzwerkschnittstelle auf und zeichnet im Hintergrund ein Balkendiagramm auf. Evtl. muss iftop nachträglich installiert werden. Die Ausgabe des Befehls iftop -h zeigt folgendes Listing:
iftop: display bandwidth usage on an interface by host Synopsis: iftop -h | [-npblNBP] [-i interface] [-f filter code] [-F net/mask] [-G net6/mask6] -h display this message -n don't do hostname lookups -N don't convert port numbers to services -p run in promiscuous mode (show traffic between other hosts on the same network segment) -b don't display a bar graph of traffic -B Display bandwidth in bytes -i interface listen on named interface -f filter code use filter code to select packets to count (default: none, but only IP packets are counted) -F net/mask show traffic flows in/out of IPv4 network -G net6/mask6 show traffic flows in/out of IPv6 network -l display and count link-local IPv6 traffic (default: off) -P show ports as well as hosts -m limit sets the upper limit for the bandwidth scale -c config file specifies an alternative configuration file iftop, version 1.0pre2 copyright (c) 2002 Paul Warren <pdw@ex-parrot.com> and contributors
Weiter Informationen finden sich hier: wiki.ubuntuusers.de
iperf
Das Client-Server-Programm iperf für die Kommandozeile macht es möglich, den Durchsatz zwischen zwei Rechnern innerhalb eines Netzwerks zu messen. Evtl. muss iperf nachträglich installiert werden. Der Befehl sudo iperf --help liefert folgende Ausgabe:
friedmar@fhubuntu:~$ sudo iperf --help Usage: iperf [-s|-c host] [options] iperf [-h|--help] [-v|--version] Client/Server: -b, --bandwidth #[KMG | pps] bandwidth to send at in bits/sec or packets per second -e, --enhancedreports use enhanced reporting giving more tcp/udp and traffic information -f, --format [kmKM] format to report: Kbits, Mbits, KBytes, MBytes -i, --interval # seconds between periodic bandwidth reports -l, --len #[KM] length of buffer to read or write (default 8 KB) -m, --print_mss print TCP maximum segment size (MTU - TCP/IP header) -o, --output <filename> output the report or error message to this specified file -p, --port # server port to listen on/connect to -u, --udp use UDP rather than TCP -w, --window #[KM] TCP window size (socket buffer size) -z, --realtime request realtime scheduler -B, --bind <host> bind to <host>, an interface or multicast address -C, --compatibility for use with older versions does not sent extra msgs -M, --mss # set TCP maximum segment size (MTU - 40 bytes) -N, --nodelay set TCP no delay, disabling Nagle's Algorithm -V, --ipv6_domain Set the domain to IPv6 Server specific: -s, --server run in server mode -U, --single_udp run in single threaded UDP mode -D, --daemon run the server as a daemon Client specific: -c, --client <host> run in client mode, connecting to <host> -d, --dualtest Do a bidirectional test simultaneously -n, --num #[KM] number of bytes to transmit (instead of -t) -r, --tradeoff Do a bidirectional test individually -t, --time # time in seconds to transmit for (default 10 secs) -B, --bind [<ip> | <ip:port>] bind src addr(s) from which to originate traffic -F, --fileinput <name> input the data to be transmitted from a file -I, --stdin input the data to be transmitted from stdin -L, --listenport # port to receive bidirectional tests back on <nowiki> -P, --parallel # number of parallel client threads to run -T, --ttl # time-to-live, for multicast (default 1) -Z, --linux-congestion <algo> set TCP congestion control algorithm (Linux only) Miscellaneous: -x, --reportexclude [CDMSV] exclude C(connection) D(data) M(multicast) S(settings) V(server) reports -y, --reportstyle C report as a Comma-Separated Values -h, --help print this message and quit -v, --version print version information and quit [KM] Indicates options that support a K or M suffix for kilo- or mega- The TCP window size option can be set by the environment variable TCP_WINDOW_SIZE. Most other options can be set by an environment variable IPERF_<long option name>, such as IPERF_BANDWIDTH. Source at <http://sourceforge.net/projects/iperf2/> Report bugs to <iperf-users@lists.sourceforge.net>
netstat
friedmar@fhubuntu:~$ netstat --help usage: netstat [-vWeenNcCF] [<Af>] -r netstat {-V|--version|-h|--help} netstat [-vWnNcaeol] [<Socket> ...] netstat { [-vWeenNac] -i | [-cnNe] -M | -s [-6tuw] } -r, --route Routentabelle anzeigen -i, --interfaces Schnittstellentabelle auflisten -g, --groups Mitgliedschaft in Multicastgruppen anzeigen -s, --statistics Netzwerksstatistiken anzeigen (wie SNMP) -M, --masquerade Maskierte Verbindungen auflisten -v, --verbose Ausführliche Ausgaben -W, --wide don't truncate IP addresses -n, --numeric Rechnernamen nicht auflösen --numeric-hosts Host-Namen nicht auflösen --numeric-ports Port-Namen nicht auflösen --numeric-users Benutzer-Namen nicht auflösen -N, --symbolic Hardwarenamen auflösen -e, --extend Weitere/zusätzliche Informationen anzeigen -p, --programs PID/Programmnamen für Sockets anzeigen -o, --timers Timer auflisten -c, --continuous Anzeige laufend aktualisieren -l, --listening Empfangsbereite Serversockets auflisten -a, --all display all sockets (default: connected) -F, --fib Forwarding Infomation Base anzeigen (Standard) -C, --cache display routing cache instead of FIB -Z, --context display SELinux security context for sockets <Socket>={-t|--tcp} {-u|--udp} {-U|--udplite} {-S|--sctp} {-w|--raw} {-x|--unix} --ax25 --ipx --netrom <AF>=Verwenden Sie »-6 | -4« oder »-A <af>« oder »--<af>«; Standardwert: inet Liste möglicher Adressfamilien, die Routen unterstützen: inet (DARPA-Internet) inet6 (IPv6) ax25 (AMPR AX.25) netrom (AMPR NET/ROM) ipx (Novell IPX) ddp (Appletalk DDP) x25 (CCITT X.25)
Z.B. liefert der Befehl netstat -r folgende Ausgabe:
Kernel-IP-Routentabelle Ziel Router Genmask Flags MSS Fenster irtt Iface default fritz.box 0.0.0.0 UG 0 0 0 wlo1 link-local 0.0.0.0 255.255.0.0 U 0 0 0 wlo1 192.168.178.0 0.0.0.0 255.255.255.0 U 0 0 0 wlo1