En Linux Sysadmins-guide til netværksadministration, fejlfinding og fejlretning
En systemadministrators rutineopgaver inkluderer konfiguration, vedligeholdelse, fejlfinding og administration af servere og netværk inden for datacentre. Der er mange værktøjer og hjælpeprogrammer i Linux designet til de administrative formål.
I denne artikel gennemgår vi nogle af de mest anvendte kommandolinjeværktøjer og hjælpeprogrammer til netværksadministration i Linux under forskellige kategorier. Vi forklarer nogle almindelige brugseksempler, som gør netværksadministration meget lettere i Linux.
Denne liste er lige så nyttig for fuldtids netværksingeniører.
Netværkskonfiguration, fejlfinding og fejlfindingsværktøjer
ifconfig er et kommandolinjegrænseværktøj til konfiguration af netværksinterface og bruges også til at initialisere grænseflader ved systemstarttidspunkt. Når en server er i gang, kan den bruges til at tildele en IP-adresse til en grænseflade og aktivere eller deaktivere grænsefladen efter behov.
Det bruges også til at se status IP-adresse, hardware/MAC-adresse samt MTU (Maximum Transmission Unit) størrelse for de aktuelt aktive grænseflader. ifconfig er således nyttigt til fejlfinding eller udførelse af systemindstilling.
Her er et eksempel for at få vist status for alle aktive netværksgrænseflader.
$ ifconfig enp1s0 Link encap:Ethernet HWaddr 28:d2:44:eb:bd:98 inet addr:192.168.0.103 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::8f0c:7825:8057:5eec/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:169854 errors:0 dropped:0 overruns:0 frame:0 TX packets:125995 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:174146270 (174.1 MB) TX bytes:21062129 (21.0 MB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:15793 errors:0 dropped:0 overruns:0 frame:0 TX packets:15793 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1 RX bytes:2898946 (2.8 MB) TX bytes:2898946 (2.8 MB)
For at liste alle grænseflader, der aktuelt er tilgængelige, enten op eller ned, skal du bruge -a
flag.
$ ifconfig -a
Brug følgende kommando for at tildele en IP-adresse til en grænseflade.
$ sudo ifconfig eth0 192.168.56.5 netmask 255.255.255.0
For at aktivere et netværksinterface skal du skrive.
$ sudo ifconfig up eth0
For at deaktivere eller lukke et netværksinterface skal du skrive.
$ sudo ifconfig down eth0
Bemærk: Selvom ifconfig er et godt værktøj, er det nu forældet (udfaset), dets erstatning er ip-kommando, som forklares nedenfor.
Hvad er forskellen mellem ifconfig og ip Command "for at lære mere om det.)
Den følgende kommando viser IP-adressen og andre oplysninger om en netværksgrænseflade.
$ ip addr show 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 28:d2:44:eb:bd:98 brd ff:ff:ff:ff:ff:ff inet 192.168.0.103/24 brd 192.168.0.255 scope global dynamic enp1s0 valid_lft 5772sec preferred_lft 5772sec inet6 fe80::8f0c:7825:8057:5eec/64 scope link valid_lft forever preferred_lft forever 3: wlp2s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether 38:b1:db:7c:78:c7 brd ff:ff:ff:ff:ff:ff ...
Hvis du midlertidigt skal tildele IP-adresse til en bestemt netværksgrænseflade (eth0), skal du skrive.
$ sudo ip addr add 192.168.56.1 dev eth0
For at fjerne en tildelt IP-adresse fra et netværksinterface (eth0) skal du skrive.
$ sudo ip addr del 192.168.56.15/24 dev eth0
For at vise den aktuelle nabotabel i kernen skal du skrive.
$ ip neigh 192.168.0.1 dev enp1s0 lladdr 10:fe:ed:3d:f3:82 REACHABLE
ifup-kommandoen aktiverer et netværksinterface, der gør det tilgængeligt til overførsel og modtagelse af data.
$ sudo ifup eth0
ifdown-kommandoen deaktiverer et netværksinterface og holder det i en tilstand, hvor det ikke kan overføre eller modtage data.
$ sudo ifdown eth0
ifquery-kommando, der bruges til at analysere netværksinterfacekonfigurationen, så du kan modtage svar på forespørgsel om, hvordan den i øjeblikket er konfigureret.
$ sudo ifquery eth0
ethtool er et kommandolinjeværktøj til forespørgsel og ændring af netværksinterfacekontrolparametre og enhedsdrivere. Eksemplet nedenfor viser brugen af ethtool og en kommando til at se parametrene for netværksgrænsefladen.
$ sudo ethtool enp0s3 Settings for enp0s3: Supported ports: [ TP ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Supported pause frame use: No Supports auto-negotiation: Yes Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Advertised pause frame use: No Advertised auto-negotiation: Yes Speed: 1000Mb/s Duplex: Full Port: Twisted Pair PHYAD: 0 Transceiver: internal Auto-negotiation: on MDI-X: off (auto) Supports Wake-on: umbg Wake-on: d Current message level: 0x00000007 (7) drv probe link Link detected: yes
ping (Packet INternet Groper) er et værktøj, der normalt bruges til at teste forbindelsen mellem to systemer på et netværk (Local Area Network (LAN) eller Wide Area Network (WAN)). Det bruger ICMP (Internet Control Message Protocol) til at kommunikere til noder på et netværk.
For at teste forbindelse til en anden node skal du f.eks. Blot angive dens IP- eller værtsnavn.
$ ping 192.168.0.103 PING 192.168.0.103 (192.168.0.103) 56(84) bytes of data. 64 bytes from 192.168.0.103: icmp_seq=1 ttl=64 time=0.191 ms 64 bytes from 192.168.0.103: icmp_seq=2 ttl=64 time=0.156 ms 64 bytes from 192.168.0.103: icmp_seq=3 ttl=64 time=0.179 ms 64 bytes from 192.168.0.103: icmp_seq=4 ttl=64 time=0.182 ms 64 bytes from 192.168.0.103: icmp_seq=5 ttl=64 time=0.207 ms 64 bytes from 192.168.0.103: icmp_seq=6 ttl=64 time=0.157 ms ^C --- 192.168.0.103 ping statistics --- 6 packets transmitted, 6 received, 0% packet loss, time 5099ms rtt min/avg/max/mdev = 0.156/0.178/0.207/0.023 ms
Du kan også bede ping om at afslutte efter et specificeret antal ECHO_REQUEST-pakker ved hjælp af -c-flag som vist.
$ ping -c 4 192.168.0.103 PING 192.168.0.103 (192.168.0.103) 56(84) bytes of data. 64 bytes from 192.168.0.103: icmp_seq=1 ttl=64 time=1.09 ms 64 bytes from 192.168.0.103: icmp_seq=2 ttl=64 time=0.157 ms 64 bytes from 192.168.0.103: icmp_seq=3 ttl=64 time=0.163 ms 64 bytes from 192.168.0.103: icmp_seq=4 ttl=64 time=0.190 ms --- 192.168.0.103 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3029ms rtt min/avg/max/mdev = 0.157/0.402/1.098/0.402 ms
Traceroute er et kommandolinjeprogram til at spore den fulde sti fra dit lokale system til et andet netværkssystem. Det udskriver antallet af humle (routerens IP'er) i den sti, du rejser for at nå sluttserveren. Det er et brugervenligt netværk til fejlfinding efter ping-kommando.
I dette eksempel sporer vi rutepakkerne fra det lokale system til en af Googles servere med IP-adresse 216.58.204.46.
$ traceroute 216.58.204.46 traceroute to 216.58.204.46 (216.58.204.46), 30 hops max, 60 byte packets 1 gateway (192.168.0.1) 0.487 ms 0.277 ms 0.269 ms 2 5.5.5.215 (5.5.5.215) 1.846 ms 1.631 ms 1.553 ms 3 * * * 4 72.14.194.226 (72.14.194.226) 3.762 ms 3.683 ms 3.577 ms 5 108.170.248.179 (108.170.248.179) 4.666 ms 108.170.248.162 (108.170.248.162) 4.869 ms 108.170.248.194 (108.170.248.194) 4.245 ms 6 72.14.235.133 (72.14.235.133) 72.443 ms 209.85.241.175 (209.85.241.175) 62.738 ms 72.14.235.133 (72.14.235.133) 65.809 ms 7 66.249.94.140 (66.249.94.140) 128.726 ms 127.506 ms 209.85.248.5 (209.85.248.5) 127.330 ms 8 74.125.251.181 (74.125.251.181) 127.219 ms 108.170.236.124 (108.170.236.124) 212.544 ms 74.125.251.181 (74.125.251.181) 127.249 ms 9 216.239.49.134 (216.239.49.134) 236.906 ms 209.85.242.80 (209.85.242.80) 254.810 ms 254.735 ms 10 209.85.251.138 (209.85.251.138) 252.002 ms 216.239.43.227 (216.239.43.227) 251.975 ms 209.85.242.80 (209.85.242.80) 236.343 ms 11 216.239.43.227 (216.239.43.227) 251.452 ms 72.14.234.8 (72.14.234.8) 279.650 ms 277.492 ms 12 209.85.250.9 (209.85.250.9) 274.521 ms 274.450 ms 209.85.253.249 (209.85.253.249) 270.558 ms 13 209.85.250.9 (209.85.250.9) 269.147 ms 209.85.254.244 (209.85.254.244) 347.046 ms 209.85.250.9 (209.85.250.9) 285.265 ms 14 64.233.175.112 (64.233.175.112) 344.852 ms 216.239.57.236 (216.239.57.236) 343.786 ms 64.233.175.112 (64.233.175.112) 345.273 ms 15 108.170.246.129 (108.170.246.129) 345.054 ms 345.342 ms 64.233.175.112 (64.233.175.112) 343.706 ms 16 108.170.238.119 (108.170.238.119) 345.610 ms 108.170.246.161 (108.170.246.161) 344.726 ms 108.170.238.117 (108.170.238.117) 345.536 ms 17 lhr25s12-in-f46.1e100.net (216.58.204.46) 345.382 ms 345.031 ms 344.884 ms
MTR er et moderne diagnostisk værktøj til kommandolinjen, der kombinerer funktionaliteten af ping og traceroute til et enkelt diagnostisk værktøj. Dets output opdateres i realtid, som standard, indtil du afslutter programmet ved at trykke på q
.
Den nemmeste måde at køre mtr på er at give det et værtsnavn eller en IP-adresse som et argument som følger.
$ mtr google.com OR $ mtr 216.58.223.78
linux-console.net (0.0.0.0) Thu Jul 12 08:58:27 2018 First TTL: 1 Host Loss% Snt Last Avg Best Wrst StDev 1. 192.168.0.1 0.0% 41 0.5 0.6 0.4 1.7 0.2 2. 5.5.5.215 0.0% 40 1.9 1.5 0.8 7.3 1.0 3. 209.snat-111-91-120.hns.net.in 23.1% 40 1.9 2.7 1.7 10.5 1.6 4. 72.14.194.226 0.0% 40 89.1 5.2 2.2 89.1 13.7 5. 108.170.248.193 0.0% 40 3.0 4.1 2.4 52.4 7.8 6. 108.170.237.43 0.0% 40 2.9 5.3 2.5 94.1 14.4 7. bom07s10-in-f174.1e100.net 0.0% 40 2.6 6.7 2.3 79.7 16.
Du kan begrænse antallet af pings til en bestemt værdi og afslutte mtr efter disse pings ved hjælp af -c
-flagget som vist.
$ mtr -c 4 google.com
rute er et kommandolinjeværktøj til visning eller manipulation af IP-routingtabellen i et Linux-system. Det bruges hovedsageligt til at konfigurere statiske ruter til bestemte værter eller netværk via en grænseflade.
Du kan se Kernel IP-routingtabel ved at skrive.
$ route Destination Gateway Genmask Flags Metric Ref Use Iface default gateway 0.0.0.0 UG 100 0 0 enp0s3 192.168.0.0 0.0.0.0 255.255.255.0 U 100 0 0 enp0s3 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
Der er mange kommandoer, du kan bruge til at konfigurere routing. Her er nogle nyttige:
Tilføj en standard gateway til routingtabellen.
$ sudo route add default gw <gateway-ip>
Føj en netværksrute til routingtabellen.
$ sudo route add -net <network ip/cidr> gw <gateway ip> <interface>
Slet en bestemt rutepost fra rutetabellen.
$ sudo route del -net <network ip/cidr>
Nmcli er et brugervenligt, scriptbart kommandolinjeværktøj til at rapportere netværksstatus, administrere netværksforbindelser og styre NetworkManager.
For at se alle dine netværksenheder skal du skrive.
$ nmcli dev status DEVICE TYPE STATE CONNECTION virbr0 bridge connected virbr0 enp0s3 ethernet connected Wired connection 1
For at kontrollere netværksforbindelser på dit system skal du skrive.
$ nmcli con show Wired connection 1 bc3638ff-205a-3bbb-8845-5a4b0f7eef91 802-3-ethernet enp0s3 virbr0 00f5d53e-fd51-41d3-b069-bdfd2dde062b bridge virbr0
Hvis du kun vil se de aktive forbindelser, skal du tilføje flag -a
.
$ nmcli con show -a
Netværksscanning og ydeevne analyseværktøjer
netstat er et kommandolinjeværktøj, der viser nyttige oplysninger såsom netværksforbindelser, routingtabeller, interface-statistikker og meget mere vedrørende Linux-netværksundersystemet. Det er nyttigt til fejlfinding af netværk og analyse af ydeevne.
Derudover er det også et grundlæggende fejlfindingsværktøj til netværkstjenester, der bruges til at kontrollere, hvilke programmer der lytter på hvilke porte. For eksempel vil følgende kommando vise alle TCP-porte i lytningstilstand, og hvilke programmer der lytter på dem.
$ sudo netstat -tnlp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:587 0.0.0.0:* LISTEN 1257/master tcp 0 0 127.0.0.1:5003 0.0.0.0:* LISTEN 1/systemd tcp 0 0 0.0.0.0:110 0.0.0.0:* LISTEN 1015/dovecot tcp 0 0 0.0.0.0:143 0.0.0.0:* LISTEN 1015/dovecot tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd tcp 0 0 0.0.0.0:465 0.0.0.0:* LISTEN 1257/master tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN 1404/pdns_server tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 1064/pure-ftpd (SER tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 972/sshd tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 975/cupsd tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 1257/master tcp 0 0 0.0.0.0:8090 0.0.0.0:* LISTEN 636/lscpd (lscpd - tcp 0 0 0.0.0.0:993 0.0.0.0:* LISTEN 1015/dovecot tcp 0 0 0.0.0.0:995 0.0.0.0:* LISTEN 1015/dovecot tcp6 0 0 :::3306 :::* LISTEN 1053/mysqld tcp6 0 0 :::3307 :::* LISTEN 1211/mysqld tcp6 0 0 :::587 :::* LISTEN 1257/master tcp6 0 0 :::110 :::* LISTEN 1015/dovecot tcp6 0 0 :::143 :::* LISTEN 1015/dovecot tcp6 0 0 :::111 :::* LISTEN 1/systemd tcp6 0 0 :::80 :::* LISTEN 990/httpd tcp6 0 0 :::465 :::* LISTEN 1257/master tcp6 0 0 :::53 :::* LISTEN 1404/pdns_server tcp6 0 0 :::21 :::* LISTEN 1064/pure-ftpd (SER tcp6 0 0 :::22 :::* LISTEN 972/sshd tcp6 0 0 ::1:631 :::* LISTEN 975/cupsd tcp6 0 0 :::25 :::* LISTEN 1257/master tcp6 0 0 :::993 :::* LISTEN 1015/dovecot tcp6 0 0 :::995 :::* LISTEN 1015/dovecot
For at se kernerute-tabellen skal du bruge -r
-flagget (hvilket svarer til at køre rutekommandoen ovenfor).
$ netstat -r Destination Gateway Genmask Flags MSS Window irtt Iface default gateway 0.0.0.0 UG 0 0 0 enp0s3 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 enp0s3 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
Bemærk: Selvom Netstat er et fantastisk værktøj, er det nu forældet (forældet), dets erstatning er ss-kommando, som forklares nedenfor.
ss (socket statistik) er et kraftfuldt kommandolinjeværktøj til at undersøge sockets. Det dumper sokkelstatistikker og viser oplysninger svarende til netstat. Derudover viser det flere TCP- og tilstandsoplysninger sammenlignet med andre lignende værktøjer.
Følgende eksempel viser, hvordan man viser alle TCP-porte (sockets), der er åbne på en server.
$ ss -ta State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 100 *:submission *:* LISTEN 0 128 127.0.0.1:fmpro-internal *:* LISTEN 0 100 *:pop3 *:* LISTEN 0 100 *:imap *:* LISTEN 0 128 *:sunrpc *:* LISTEN 0 100 *:urd *:* LISTEN 0 128 *:domain *:* LISTEN 0 9 *:ftp *:* LISTEN 0 128 *:ssh *:* LISTEN 0 128 127.0.0.1:ipp *:* LISTEN 0 100 *:smtp *:* LISTEN 0 128 *:8090 *:* LISTEN 0 100 *:imaps *:* LISTEN 0 100 *:pop3s *:* ESTAB 0 0 192.168.0.104:ssh 192.168.0.103:36398 ESTAB 0 0 127.0.0.1:34642 127.0.0.1:opsession-prxy ESTAB 0 0 127.0.0.1:34638 127.0.0.1:opsession-prxy ESTAB 0 0 127.0.0.1:34644 127.0.0.1:opsession-prxy ESTAB 0 0 127.0.0.1:34640 127.0.0.1:opsession-prxy LISTEN 0 80 :::mysql :::* ...
For at få vist alle aktive TCP-forbindelser sammen med deres timere skal du køre følgende kommando.
$ ss -to
NC (NetCat) også benævnt “Network Swiss Army kniv”, er et kraftfuldt værktøj, der bruges til næsten enhver opgave relateret til TCP-, UDP- eller UNIX-domænesokler. Det bruges åbne TCP-forbindelser, lyt på vilkårlige TCP- og UDP-porte, udfør port scanning plus mere.
Du kan også bruge den som en simpel TCP-proxyserver til test af netværksdemoner for at kontrollere, om fjernporte er tilgængelige og meget mere. Desuden kan du anvende nc sammen med pv-kommandoen til at overføre filer mellem to computere.
Det følgende eksempel viser, hvordan man scanner en liste over porte.
$ nc -zv server2.tecmint.lan 21 22 80 443 3000
Du kan også angive en række porte som vist.
$ nc -zv server2.tecmint.lan 20-90
Følgende eksempel viser, hvordan man bruger nc til at åbne en TCP-forbindelse til port 5000 på server2.tecmint.lan, ved hjælp af port 3000 som kildeport, med en timeout på 10 sekunder.
$ nc -p 3000 -w 10 server2.tecmint.lan 5000
Nmap (Network Mapper) er et kraftfuldt og ekstremt alsidigt værktøj til Linux-system/netværksadministratorer. Det bruges til at indsamle oplysninger om en enkelt vært eller udforske netværk et helt netværk. Nmap bruges også til at udføre sikkerhedsscanninger, netværksrevision og finde åbne porte på eksterne værter og så meget mere.
Du kan f.eks. Scanne en vært ved hjælp af dens værtsnavn eller IP-adresse.
$ nmap google.com Starting Nmap 6.40 ( http://nmap.org ) at 2018-07-12 09:23 BST Nmap scan report for google.com (172.217.166.78) Host is up (0.0036s latency). rDNS record for 172.217.166.78: bom05s15-in-f14.1e100.net Not shown: 998 filtered ports PORT STATE SERVICE 80/tcp open http 443/tcp open https Nmap done: 1 IP address (1 host up) scanned in 4.92 seconds
Alternativt kan du bruge en IP-adresse som vist.
$ nmap 192.168.0.103 Starting Nmap 6.40 ( http://nmap.org ) at 2018-07-12 09:24 BST Nmap scan report for 192.168.0.103 Host is up (0.000051s latency). Not shown: 994 closed ports PORT STATE SERVICE 22/tcp open ssh 25/tcp open smtp 902/tcp open iss-realsecure 4242/tcp open vrml-multi-use 5900/tcp open vnc 8080/tcp open http-proxy MAC Address: 28:D2:44:EB:BD:98 (Lcfc(hefei) Electronics Technology Co.) Nmap done: 1 IP address (1 host up) scanned in 0.13 seconds
Læs vores følgende nyttige artikler om nmap-kommando.
- Sådan bruges Nmap Script Engine (NSE) -skripter i Linux
- En praktisk guide til Nmap (Network Security Scanner) i Kali Linux
- Find ud af alle Live Hosts IP-adresser, der er tilsluttet på netværket i Linux
Hjælpeprogrammer til DNS-opslag
værtkommando er et simpelt værktøj til udførelse af DNS-opslag, det oversætter værtsnavne til IP-adresser og omvendt.
$ host google.com google.com has address 172.217.166.78 google.com mail is handled by 20 alt1.aspmx.l.google.com. google.com mail is handled by 30 alt2.aspmx.l.google.com. google.com mail is handled by 40 alt3.aspmx.l.google.com. google.com mail is handled by 50 alt4.aspmx.l.google.com. google.com mail is handled by 10 aspmx.l.google.com.
dig (domæneoplysningsudbyder) er også et andet simpelt DNS-opslagsværktøj, der bruges til at forespørge DNS-relaterede oplysninger såsom A Record, CNAME, MX Record osv., for eksempel:
$ dig google.com ; <<>> DiG 9.9.4-RedHat-9.9.4-51.el7 <<>> google.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 23083 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 13, ADDITIONAL: 14 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;google.com. IN A ;; ANSWER SECTION: google.com. 72 IN A 172.217.166.78 ;; AUTHORITY SECTION: com. 13482 IN NS c.gtld-servers.net. com. 13482 IN NS d.gtld-servers.net. com. 13482 IN NS e.gtld-servers.net. com. 13482 IN NS f.gtld-servers.net. com. 13482 IN NS g.gtld-servers.net. com. 13482 IN NS h.gtld-servers.net. com. 13482 IN NS i.gtld-servers.net. com. 13482 IN NS j.gtld-servers.net. com. 13482 IN NS k.gtld-servers.net. com. 13482 IN NS l.gtld-servers.net. com. 13482 IN NS m.gtld-servers.net. com. 13482 IN NS a.gtld-servers.net. com. 13482 IN NS b.gtld-servers.net. ;; ADDITIONAL SECTION: a.gtld-servers.net. 81883 IN A 192.5.6.30 b.gtld-servers.net. 3999 IN A 192.33.14.30 c.gtld-servers.net. 14876 IN A 192.26.92.30 d.gtld-servers.net. 85172 IN A 192.31.80.30 e.gtld-servers.net. 95861 IN A 192.12.94.30 f.gtld-servers.net. 78471 IN A 192.35.51.30 g.gtld-servers.net. 5217 IN A 192.42.93.30 h.gtld-servers.net. 111531 IN A 192.54.112.30 i.gtld-servers.net. 93017 IN A 192.43.172.30 j.gtld-servers.net. 93542 IN A 192.48.79.30 k.gtld-servers.net. 107218 IN A 192.52.178.30 l.gtld-servers.net. 6280 IN A 192.41.162.30 m.gtld-servers.net. 2689 IN A 192.55.83.30 ;; Query time: 4 msec ;; SERVER: 192.168.0.1#53(192.168.0.1) ;; WHEN: Thu Jul 12 09:30:57 BST 2018 ;; MSG SIZE rcvd: 487
Nslookup er også et populært kommandolinjeværktøj til forespørgsel på DNS-servere både interaktivt og ikke-interaktivt. Det bruges til at forespørge DNS-ressourceposter (RR). Du kan finde ud af "A" -post (IP-adresse) for et domæne som vist.
$ nslookup google.com Server: 192.168.0.1 Address: 192.168.0.1#53 Non-authoritative answer: Name: google.com Address: 172.217.166.78
Du kan også foretage et omvendt domæneopslag som vist.
$ nslookup 216.58.208.174 Server: 192.168.0.1 Address: 192.168.0.1#53 Non-authoritative answer: 174.208.58.216.in-addr.arpa name = lhr25s09-in-f14.1e100.net. 174.208.58.216.in-addr.arpa name = lhr25s09-in-f174.1e100.net. Authoritative answers can be found from: in-addr.arpa nameserver = e.in-addr-servers.arpa. in-addr.arpa nameserver = f.in-addr-servers.arpa. in-addr.arpa nameserver = a.in-addr-servers.arpa. in-addr.arpa nameserver = b.in-addr-servers.arpa. in-addr.arpa nameserver = c.in-addr-servers.arpa. in-addr.arpa nameserver = d.in-addr-servers.arpa. a.in-addr-servers.arpa internet address = 199.180.182.53 b.in-addr-servers.arpa internet address = 199.253.183.183 c.in-addr-servers.arpa internet address = 196.216.169.10 d.in-addr-servers.arpa internet address = 200.10.60.53 e.in-addr-servers.arpa internet address = 203.119.86.101 f.in-addr-servers.arpa internet address = 193.0.9.1
Linux Network Packet Analyzers
Tcpdump er en meget kraftfuld og udbredt kommandolinjens netværkssniffer. Det bruges til at fange og analysere TCP/IP-pakker, der transmitteres eller modtages via et netværk på en bestemt grænseflade.
For at fange pakker fra en given grænseflade skal du angive den ved hjælp af indstillingen -i
.
$ tcpdump -i eth1 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on enp0s3, link-type EN10MB (Ethernet), capture size 262144 bytes 09:35:40.287439 IP linux-console.net.ssh > 192.168.0.103.36398: Flags [P.], seq 4152360356:4152360552, ack 306922699, win 270, options [nop,nop,TS val 2211778668 ecr 2019055], length 196 09:35:40.287655 IP 192.168.0.103.36398 > linux-console.net.ssh: Flags [.], ack 196, win 5202, options [nop,nop,TS val 2019058 ecr 2211778668], length 0 09:35:40.288269 IP linux-console.net.54899 > gateway.domain: 43760+ PTR? 103.0.168.192.in-addr.arpa. (44) 09:35:40.333763 IP gateway.domain > linux-console.net.54899: 43760 NXDomain* 0/1/0 (94) 09:35:40.335311 IP linux-console.net.52036 > gateway.domain: 44289+ PTR? 1.0.168.192.in-addr.arpa. (42)
For at fange et specifikt antal pakker skal du bruge indstillingen -c
til at indtaste det ønskede nummer.
$ tcpdump -c 5 -i eth1
Du kan også fange og gemme pakker i en fil til senere analyse, brug flaget -w
til at specificere outputfilen.
$ tcpdump -w captured.pacs -i eth1
Wireshark er et populært, kraftfuldt, alsidigt og let at bruge værktøj til at indfange og analysere pakker i et pakkeomskiftet netværk i realtid.
Du kan også gemme data, den har fanget, i en fil til senere inspektion. Det bruges af systemadministratorer og netværksingeniører til at overvåge og inspicere pakkerne til sikkerheds- og fejlfindingsformål.
Læs vores artikel "10 tip til, hvordan du bruger Wireshark til at analysere netværkspakker for at lære mere om Wireshark".
bmon er et kraftfuldt, kommandolinjebaseret netværksovervågnings- og fejlretningsværktøj til Unix-lignende systemer, det registrerer netværksrelaterede statistikker og udskriver dem visuelt i et menneskeligt venligt format. Det er en pålidelig og effektiv båndbreddemonitor og hastighedsestimator i realtid.
Læs vores artikel “bmon - Et kraftfuldt netværksbåndbreddemonitorings- og fejlfindingsværktøj for at lære mere om bmon”.
Linux Firewall Management Tools
iptables er et kommandolinjeværktøj til konfiguration, vedligeholdelse og inspektion af tabellernes IP-pakkefiltrering og NAT-regelsæt. Det bruges til at oprette og administrere Linux-firewall (Netfilter). Det giver dig mulighed for at liste op eksisterende pakkefilterregler; tilføje eller slette eller ændre regler for pakkefilter liste pr. regel tællere af pakkerfilterreglerne.
Du kan lære at bruge Iptables til forskellige formål fra vores enkle, men omfattende guider.
- Grundlæggende vejledning om IPTables (Linux Firewall) Tips/kommandoer
- 25 Nyttige IPtable Firewall-regler, som enhver Linux-administrator burde vide
- Sådan opsættes en Iptables-firewall for at aktivere fjernadgang til tjenester
- Sådan blokeres Ping ICMP-anmodninger til Linux-systemer
Firewalld er en kraftfuld og dynamisk dæmon til styring af Linux-firewall (Netfilter), ligesom iptables. Det bruger "netværkszoner" i stedet for INPUT, OUTPUT og FORWARD CHAINS i iptables. På nuværende Linux-distributioner som RHEL/CentOS 7 og Fedora 21+ erstattes iptables aktivt af firewalld.
For at komme i gang med firewalld, se disse guider, der er anført nedenfor:
- Nyttige 'FirewallD'-regler til konfiguration og styring af firewall i Linux
- Sådan konfigureres 'FirewallD' i RHEL/CentOS 7 og Fedora 21
- Sådan startes/stoppes og aktiveres/deaktiveres FirewallD og Iptables Firewall i Linux
- Opsætning af Samba og konfigurering af FirewallD og SELinux til at tillade fildeling på Linux/Windows
Vigtigt: Iptables understøttes stadig og kan installeres med YUM-pakkehåndtering. Du kan dog ikke bruge Firewalld og iptables på samme tid på samme server - du skal vælge en.
UFW er et velkendt og standardværktøj til konfiguration af firewall til distributioner af Debian og Ubuntu Linux. Det bruges top aktivere/deaktivere system firewall, tilføje/slette/ændre/nulstille regler for pakkefiltrering og meget mere.
For at kontrollere UFW-firewallstatus skal du skrive.
$ sudo ufw status
Hvis UFW-firewall ikke er aktiv, kan du aktivere eller aktivere den ved hjælp af følgende kommando.
$ sudo ufw enable
Brug følgende kommando for at deaktivere UFW-firewall.
$ sudo ufw disable
Læs vores artikel "Sådan konfigureres UFW Firewall på Ubuntu og Debian" for at lære mere UFW).
Hvis du vil finde flere oplysninger om et bestemt program, kan du se dets man-sider som vist.
$ man programs_name
Det er alt for nu! I denne omfattende vejledning gennemgik vi nogle af de mest anvendte kommandolinjeværktøjer og hjælpeprogrammer til netværksadministration i Linux under forskellige kategorier for systemadministratorer og lige så nyttige for fuldtidsnetværksadministratorer/ingeniører.
Du kan dele dine tanker om denne guide via kommentarformularen nedenfor. Hvis vi har savnet ofte anvendte og vigtige Linux-netværksværktøjer/-værktøjer eller andre nyttige relaterede oplysninger, så lad os det også vide.