Ricerca…


introduzione

Questo documento copre il networking TCP / IP, l'amministrazione di rete e le basi di configurazione del sistema. Linux può supportare più dispositivi di rete. I nomi dei dispositivi sono numerati e iniziano da zero e contano verso l'alto. Ad esempio, un computer con due schede NIC avrà due dispositivi con etichetta eth0 ed eth1.

Dettagli dell'interfaccia

ifconfig

Elenca tutte le interfacce disponibili sulla macchina

$ ifconfig -a

Elenca i dettagli di un'interfaccia specifica

Sintassi: $ ifconfig <interface>

Esempio:

$ ifconfig eth0
eth0      Link encap:Ethernet  HWaddr xx:xx:xx:xx:xx:xx  
          inet addr:x.x.x.x  Bcast:x.x.x.x  Mask:x.x.x.x
          inet6 addr: xxxx::xxx:xxxx:xxxx:xxxx/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4426618 errors:0 dropped:1124 overruns:0 frame:0
          TX packets:189171 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:382611580 (382.6 MB)  TX bytes:36923665 (36.9 MB)
          Interrupt:16 Memory:fb5e0000-fb600000 

Ethtool - interrogare il driver di rete e le impostazioni hardware

Sintassi: $ ethtool <interface>

Esempio:

$ ethtool eth0
Settings for eth0:
    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: 1
    Transceiver: internal
    Auto-negotiation: on
    MDI-X: on (auto)
    Supports Wake-on: pumbg
    Wake-on: g
    Current message level: 0x00000007 (7)
                   drv probe link
    Link detected: yes


ip - mostra / manipola routing, dispositivi, policy routing e tunnel

Sintassi: $ ip { link | ... | route | macsec } (vedi man ip per la lista completa degli oggetti)

Esempi

Elenca le interfacce di rete

$ ip link show    

Rinomina l'interfaccia eth0 in wan

$ ip link set dev eth0 name wan    

Porta l'interfaccia eth0 su (o giù)

$ ip link set dev eth0 up    

Elenca gli indirizzi per le interfacce

$ ip addr show    

Aggiungi (o del) ip e mask (255.255.255.0)

$ ip addr add 1.2.3.4/24 brd + dev eth0 

Aggiunta di IP a un'interfaccia

Un indirizzo IP per un'interfaccia potrebbe essere ottenuto tramite DHCP o assegnazione statica


DHCP Se si è connessi a una rete con un server DHCP in esecuzione, il comando dhclient può ottenere un indirizzo IP per l'interfaccia

$ dhclient <interface>

o in alternativa, è possibile apportare una modifica al /etc/network/interfaces per l'interfaccia da avviare all'avvio e ottenere DHCP IP

auto eth0
iface eth0 inet dhcp

Configurazione statica (Modifica permanente) usando il /etc/network/interfaces

Se si desidera configurare staticamente le impostazioni dell'interfaccia (modifica permanente), è possibile farlo nel /etc/network/interfaces .

Esempio:

auto eth0 # Bring up the interface on boot
iface eth0 inet static 
    address 10.10.70.10
    netmask 255.255.0.0
    gateway 10.10.1.1
    dns-nameservers 10.10.1.20
    dns-nameservers 10.10.1.30

Queste modifiche persistono anche dopo il riavvio del sistema.


Configurazione statica (modifica temporanea) utilizzando l'utility ifconfig

Un indirizzo IP statico può essere aggiunto a un'interfaccia usando l'utility ifconfig come segue

$ ifconfig <interface> <ip-address>/<mask> up

Esempio:

$ ifconfig eth0 10.10.50.100/16 up

Risoluzione DNS locale

File: /etc/hosts contiene un elenco di host che devono essere risolti localmente (non da DNS)

Esempio di contenuto del file:

127.0.0.1         your-node-name.your-domain.com  localhost.localdomain  localhost 
XXX.XXX.XXX.XXX   node-name

Il formato file per il file hosts è specificato da RFC 952

Configurare i server DNS per la risoluzione dei nomi di dominio

File: /etc/resolv.conf contiene un elenco di server DNS per la risoluzione dei nomi di dominio

Esempio di contenuto del file:

nameserver 8.8.8.8 # IP address of the primary name server
nameserver 8.8.4.4 # IP address of the secondary name server

Nel caso di un server DNS interno, è possibile verificare se questo server risolve i nomi DNS correttamente utilizzando il comando dig :

$ dig google.com @your.dns.server.com +short

Guarda e manipola percorsi

Manipola la tabella di routing IP usando il route

Visualizza tabella di routing

$ route # Displays list or routes and also resolves host names
$ route -n # Displays list of routes without resolving host names for faster results

Aggiungi / Elimina rotta

Opzione Descrizione
add o del Aggiungi o elimina un percorso
-host xxxx Aggiungi percorso a un singolo host identificato dall'indirizzo IP
-net xxxx Aggiungi percorso a una rete identificata dall'indirizzo di rete
gw xxxx Specificare il gateway di rete
netmask xxxx Specificare la maschera di rete di rete
default Aggiungi una rotta predefinita

Esempi:

  • aggiungi percorso a un host $ route add -host xxxx eth1
  • aggiungi percorso a una rete $ route add -net 2.2.2.0 netmask 255.255.255.0 eth0
  • In alternativa, è possibile utilizzare anche il formato cidr per aggiungere una route alla route di rete route add -net 2.2.2.0/24 eth0
  • aggiungi il gateway predefinito $ route add default gw 2.2.2.1 eth0
  • cancella una rotta $ route del -net 2.2.2.0/24

Manipola la tabella di routing IP usando ip

Visualizza tabella di routing

$ ip route show # List routing table

Aggiungi / Elimina rotta

Opzione Descrizione
add o del o change o append o replace Cambia un percorso
show o flush il comando visualizza il contenuto delle tabelle di routing o lo rimuove
restore ripristinare le informazioni della tabella di routing dallo stdin
get questo comando ottiene una singola rotta verso una destinazione e stampa il suo contenuto esattamente come il kernel lo vede

Esempi:

  • Impostare il gateway predefinito su 1.2.3.254 $ ip route add default via 1.2.3.254
  • Aggiunge una route predefinita (per tutti gli indirizzi) tramite il gateway locale 192.168.1.1 che può essere raggiunto sul dispositivo eth0 $ ip route add default via 192.168.1.1 dev eth0

Configura un nome host per qualche altro sistema sulla tua rete

Puoi configurare il tuo sistema Linux (o macOS) per legare un identificativo <hostname> ad un altro indirizzo IP del sistema nella tua rete. Puoi configurarlo:

  • Systemwide. Dovresti modificare il file / etc / hosts . Devi solo aggiungere a quel file una nuova riga contenente:

    1. l'indirizzo IP del sistema remoto <ip_rem> ,
    2. uno o più spazi bianchi e
    3. l'identificativo <hostname> .
  • Per un singolo utente. Dovresti modificare il file ~ / .hosts --- dovresti crearlo. Non è così semplice come per tutto il sistema. Qui puoi vedere una spiegazione.


Ad esempio, potresti aggiungere questa linea usando lo strumento Unix cat . Si supponga di voler eseguire un ping su un PC nella propria rete locale il cui indirizzo IP è 192.168.1.44 e si desidera fare riferimento a tale indirizzo IP solo da remote_pc . Quindi devi scrivere sul tuo guscio:

$ sudo cat 192.168.1.44 remote_pc

Quindi puoi fare quel ping solo da:

$ ping remote_pc


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow