Wyszukiwanie w witrynie

13 Polecenia dotyczące konfiguracji sieci i rozwiązywania problemów w systemie Linux


Komputery są połączone w sieć w celu wymiany informacji lub zasobów między sobą. Co najmniej dwa komputery są połączone za pośrednictwem mediów sieciowych zwanych siecią komputerową. W celu utworzenia sieci komputerowej zaangażowanych jest wiele urządzeń sieciowych lub mediów.

Komputer z systemem operacyjnym Linux może także należeć do sieci, niezależnie od tego, czy jest to mała, czy duża sieć, ze względu na swoją wielozadaniowość i wieloużytkownikowość. Utrzymanie prawidłowego działania systemu i sieci jest zadaniem administratora systemu/sieci.

W tym artykule dokonamy przeglądu często używanych poleceń konfiguracji sieci i rozwiązywania problemów w systemie Linux.

1. Polecenie ifconfig

Komenda ifconfig (konfigurator interfejsu) służy do inicjowania interfejsu, przypisania adresu IP do interfejsu i włączenia lub wyłącz interfejs na żądanie.

Za pomocą tego polecenia możesz wyświetlić Adres IP i Sprzęt/adres MAC przypisany do interfejsu, a także MTU (Maksymalna jednostka transmisyjna).

ifconfig

eth0      Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:192.168.50.2  Bcast:192.168.50.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6093 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4824 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:6125302 (5.8 MiB)  TX bytes:536966 (524.3 KiB)
          Interrupt:18 Base address:0x2000

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:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:480 (480.0 b)  TX bytes:480 (480.0 b)

Komenda ifconfig z interfejsem (eth0) pokazuje tylko szczegółowe szczegóły interfejsu, takie jak adres IP, adres MAC itp. za pomocą Opcja -a wyświetli wszystkie dostępne szczegóły interfejsu, jeśli również jest wyłączona.

ifconfig eth0

eth0      Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:192.168.50.2  Bcast:192.168.50.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6119 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4841 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:6127464 (5.8 MiB)  TX bytes:539648 (527.0 KiB)
          Interrupt:18 Base address:0x2000

Ustaw adres IP i bramę w systemie Linux

Przypisywanie adresu IP i bramy do interfejsu na bieżąco. Ustawienie zostanie usunięte w przypadku ponownego uruchomienia systemu.

ifconfig eth0 192.168.50.5 netmask 255.255.255.0

Włącz lub wyłącz określony interfejs

Aby włączyć lub wyłączyć określony interfejs, używamy przykładowego polecenia w następujący sposób.

Włącz eth0
ifup eth0
Wyłącz eth0
ifdown eth0

Ustawianie rozmiaru MTU

Domyślny rozmiar MTU to 1500. Za pomocą poniższego polecenia możemy ustawić wymagany rozmiar MTU. Zastąp XXXX rozmiarem.

ifconfig eth0 mtu XXXX

Ustaw interfejs w trybie rozwiązłym

Interfejs sieciowy odbierał tylko pakiety należące do tej konkretnej karty sieciowej. Jeśli ustawisz interfejs w tryb promiskularny, będzie on odbierał wszystkie pakiety. Jest to bardzo przydatne do przechwytywania pakietów i późniejszej ich analizy. W tym celu możesz potrzebować dostępu administratora.

ifconfig eth0 - promisc

Aktualizacja: polecenie ifconfig zostało zastąpione poleceniem IP w większości nowoczesnych dystrybucji Linuksa.

2. Polecenie ping

Polecenie Ping (Packet INternet Groper) to najlepszy sposób testowania łączności pomiędzy dwoma węzłami. Niezależnie od tego, czy jest to Sieć lokalna (LAN), czy Sieć rozległa (WAN).

Ping używa ICMP (protokołu komunikatów kontroli Internetu) do komunikacji z innymi urządzeniami. Możesz pingować nazwę hosta lub adres IP, używając poniższych poleceń.

ping 4.2.2.2

PING 4.2.2.2 (4.2.2.2) 56(84) bytes of data.
64 bytes from 4.2.2.2: icmp_seq=1 ttl=44 time=203 ms
64 bytes from 4.2.2.2: icmp_seq=2 ttl=44 time=201 ms
64 bytes from 4.2.2.2: icmp_seq=3 ttl=44 time=201 ms

OR

# ping linux-console.net

PING linux-console.net (50.116.66.136) 56(84) bytes of data.
64 bytes from 50.116.66.136: icmp_seq=1 ttl=47 time=284 ms
64 bytes from 50.116.66.136: icmp_seq=2 ttl=47 time=287 ms
64 bytes from 50.116.66.136: icmp_seq=3 ttl=47 time=285 ms

W przypadku polecenia ping Linux wykonuj je aż do przerwania. Pingowanie z opcją -c kończy się po N liczbie żądań (odpowiedź na sukces lub błąd).

ping -c 5 linux-console.net

PING linux-console.net (50.116.66.136) 56(84) bytes of data.
64 bytes from 50.116.66.136: icmp_seq=1 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=2 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=3 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=4 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=5 ttl=47 time=285 ms

--- linux-console.net ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4295ms
rtt min/avg/max/mdev = 285.062/285.324/285.406/0.599 ms

3. Polecenie Traceroute

traceroute to narzędzie do rozwiązywania problemów z siecią, które pokazuje liczbę przeskoków potrzebnych do dotarcia do miejsca docelowego, a także określa ścieżkę podróży pakietów. Poniżej śledzimy trasę do globalnego adresu IP serwera DNS, a możliwość dotarcia do miejsca docelowego pokazuje również ścieżkę podróży tego pakietu.

traceroute 4.2.2.2

traceroute to 4.2.2.2 (4.2.2.2), 30 hops max, 60 byte packets
 1  192.168.50.1 (192.168.50.1)  0.217 ms  0.624 ms  0.133 ms
 2  227.18.106.27.mysipl.com (27.106.18.227)  2.343 ms  1.910 ms  1.799 ms
 3  221-231-119-111.mysipl.com (111.119.231.221)  4.334 ms  4.001 ms  5.619 ms
 4  10.0.0.5 (10.0.0.5)  5.386 ms  6.490 ms  6.224 ms
 5  gi0-0-0.dgw1.bom2.pacific.net.in (203.123.129.25)  7.798 ms  7.614 ms  7.378 ms
 6  115.113.165.49.static-mumbai.vsnl.net.in (115.113.165.49)  10.852 ms  5.389 ms  4.322 ms
 7  ix-0-100.tcore1.MLV-Mumbai.as6453.net (180.87.38.5)  5.836 ms  5.590 ms  5.503 ms
 8  if-9-5.tcore1.WYN-Marseille.as6453.net (80.231.217.17)  216.909 ms  198.864 ms  201.737 ms
 9  if-2-2.tcore2.WYN-Marseille.as6453.net (80.231.217.2)  203.305 ms  203.141 ms  202.888 ms
10  if-5-2.tcore1.WV6-Madrid.as6453.net (80.231.200.6)  200.552 ms  202.463 ms  202.222 ms
11  if-8-2.tcore2.SV8-Highbridge.as6453.net (80.231.91.26)  205.446 ms  215.885 ms  202.867 ms
12  if-2-2.tcore1.SV8-Highbridge.as6453.net (80.231.139.2)  202.675 ms  201.540 ms  203.972 ms
13  if-6-2.tcore1.NJY-Newark.as6453.net (80.231.138.18)  203.732 ms  203.496 ms  202.951 ms
14  if-2-2.tcore2.NJY-Newark.as6453.net (66.198.70.2)  203.858 ms  203.373 ms  203.208 ms
15  66.198.111.26 (66.198.111.26)  201.093 ms 63.243.128.25 (63.243.128.25)  206.597 ms 66.198.111.26 (66.198.111.26)  204.178 ms
16  ae9.edge1.NewYork.Level3.net (4.68.62.185)  205.960 ms  205.740 ms  205.487 ms
17  vlan51.ebr1.NewYork2.Level3.net (4.69.138.222)  203.867 ms vlan52.ebr2.NewYork2.Level3.net (4.69.138.254)  202.850 ms vlan51.ebr1.NewYork2.Level3.net (4.69.138.222)  202.351 ms
18  ae-6-6.ebr2.NewYork1.Level3.net (4.69.141.21)  201.771 ms  201.185 ms  201.120 ms
19  ae-81-81.csw3.NewYork1.Level3.net (4.69.134.74)  202.407 ms  201.479 ms ae-92-92.csw4.NewYork1.Level3.net (4.69.148.46)  208.145 ms
20  ae-2-70.edge2.NewYork1.Level3.net (4.69.155.80)  200.572 ms ae-4-90.edge2.NewYork1.Level3.net (4.69.155.208)  200.402 ms ae-1-60.edge2.NewYork1.Level3.net (4.69.155.16)  203.573 ms
21  b.resolvers.Level3.net (4.2.2.2)  199.725 ms  199.190 ms  202.488 ms

4. Polecenie Netstat

Polecenie Netstat (Statystyka sieci) wyświetla informacje o połączeniu, informacje o tablicy routingu itp. Aby wyświetlić informacje o tablicy routingu, użyj opcji jako -r.

netstat -r

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.50.0    *               255.255.255.0   U         0 0          0 eth0
link-local      *               255.255.0.0     U         0 0          0 eth0
default         192.168.50.1    0.0.0.0         UG        0 0          0 eth0

Więcej przykładów poleceń Netstat znajdziesz w naszym wcześniejszym artykule na temat 20 przykładów poleceń Netstat w systemie Linux.

Aktualizacja: polecenie netstat zostało zastąpione poleceniem ss (statystyki gniazda) w większości nowoczesnych dystrybucji Linuksa.

5. Polecenie kopania

Wyszukiwanie (przeszukiwanie informacji o domenie) sprawdzanie informacji związanych z DNS, takich jak rekord A, CNAME , Rekord MX itp. To polecenie jest używane głównie do rozwiązywania problemów z zapytaniami związanymi z DNS.

dig linux-console.net; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> linux-console.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<

Więcej przykładów Dig Command znajdziesz w artykule na temat 10 Linuxowych poleceń Dig do wysyłania zapytań do DNS.

6. Polecenie Nslookup

Polecenie nslookup służy także do znajdowania zapytań związanych z DNS. Poniższe przykłady przedstawiają rekord A (adres IP) witryny linux-console.net.

nslookup linux-console.net
Server:         4.2.2.2
Address:        4.2.2.2#53

Non-authoritative answer:
linux-console.net canonical name = linux-console.net.
Name:   linux-console.net
Address: 50.116.66.136

Więcej informacji na temat poleceń Nslookup można znaleźć w artykule na temat 8 przykładów poleceń Nslookup w systemie Linux.

7. Polecenie trasy

Polecenie route pokazuje także tablicę routingu ip i manipuluje nią. Aby zobaczyć domyślną tablicę routingu w Linuksie, wpisz następujące polecenie.

route

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.50.0    *               255.255.255.0   U     0      0        0 eth0
link-local      *               255.255.0.0     U     1002   0        0 eth0
default         192.168.50.1    0.0.0.0         UG    0      0        0 eth0

Dodawanie, usuwanie tras i bramy domyślnej za pomocą następujących poleceń.

Dodaj trasę w systemie Linux
route add -net 10.10.10.0/24 gw 192.168.0.1
Usuń trasę w systemie Linux
route del -net 10.10.10.0/24 gw 192.168.0.1
Dodaj bramę domyślną w systemie Linux
route add default gw 192.168.0.1

8. Polecenie hosta

Polecenie host, aby znaleźć nazwę dla IP lub IP, aby nadać nazwę w IPv4 lub IPv6 i także odpytuj rekordy DNS.

host www.google.com

www.google.com has address 173.194.38.180
www.google.com has address 173.194.38.176
www.google.com has address 173.194.38.177
www.google.com has address 173.194.38.178
www.google.com has address 173.194.38.179
www.google.com has IPv6 address 2404:6800:4003:802::1014

Użycie opcji -t w celu znalezienia rekordów zasobów DNS, takich jak CNAME, NS, MX, SOA , itp.

host -t CNAME www.redhat.com

www.redhat.com is an alias for wildcard.redhat.com.edgekey.net.

9. Polecenie Arp

ARP (protokół rozpoznawania adresów) jest przydatny do przeglądania/dodawania zawartości tabel ARP jądra. Aby zobaczyć domyślną tabelę, użyj polecenia as.

arp -e

Address                  HWtype  HWaddress           Flags Mask            Iface
192.168.50.1             ether   00:50:56:c0:00:08   C                     eth0

10. Polecenie Ettool

ethtool jest zamiennikiem mii-tool. Służy do przeglądania, ustawiania szybkości i dupleksu karty interfejsu sieciowego (NIC). Możesz ustawić dupleks na stałe w /etc/sysconfig/network-scripts/ifcfg-eth0 za pomocą zmiennej ETHTOOL_OPTS.

ethtool eth0

Settings for eth0:
        Current message level: 0x00000007 (7)
        Link detected: yes

11. Polecenie Iwconfig

Polecenie iwconfig w Linuksie służy do konfigurowania interfejsu sieci bezprzewodowej. Możesz zobaczyć i ustawić podstawowe szczegóły Wi-Fi, takie jak kanał SSID i szyfrowanie. Aby dowiedzieć się więcej, możesz zapoznać się ze stroną podręcznika iwconfig.

iwconfig [interface]

12. Polecenie nazwy hosta

Nazwa hosta służy do identyfikacji w sieci. Wykonaj polecenie nazwa hosta, aby zobaczyć nazwę hosta swojego urządzenia. Możesz ustawić nazwę hosta na stałe w /etc/sysconfig/network. Należy ponownie uruchomić pole po ustawieniu prawidłowej nazwy hosta.

hostname 

linux-console.net

13. Narzędzia Nmcli i Nmtui

Narzędzia Nmcli i Nmtui służą do konfigurowania ustawień sieciowych, a także do zarządzania urządzeniami sieciowymi, tworzenia, modyfikowania, aktywowania/dezaktywowania i usuwania połączeń sieciowych w systemach Linux.

nmcli
nmtui

Ten artykuł może być przydatny w codziennym użytkowaniu administratorów sieci Linux w systemach operacyjnych Linux/uniksopodobnych. Jeśli przegapiliśmy, prosimy o udostępnienie w naszym polu komentarza.