GNU/Linux >> Linux Esercitazione >  >> Linux

Configurazione di un indirizzo IPv6 in Red Hat Enterprise Linux 7 e 8

Come ho già detto in Cosa c'è da sapere su IPv6 , esistono diversi metodi per configurare un indirizzo IPv6 su una macchina. Ci concentreremo principalmente sulla configurazione di un indirizzo IPv6 su un sistema Red Hat Enterprise Linux (RHEL) 7 e 8 e spiegheremo brevemente i diversi metodi di assegnazione.

[Vuoi provare Red Hat Enterprise Linux? Scaricalo ora gratuitamente.]

Configurazione di IPv6 su RHEL 7 e 8

Un sistema Red Hat Enterprise Linux è configurato per ottenere automaticamente un indirizzo IPv6. Queste sono le righe nel file di configurazione in cui avviene la magia (aggiungo qualche spiegazione ad ogni riga):

[root@rhel8 ~]# cat /etc/sysconfig/network-scripts/ifcfg-enp1s0
………  
………
IPV6INIT="yes"  ←  Enable initialization on the interface
IPV6_AUTOCONF="yes" ← Accept Router Advertisements (RA’s)
IPV6_DEFROUTE="yes" ← The default IPv6 route is assigned to the interface
IPV6_FAILURE_FATAL="no" ← Opposite of ‘may-fail’
IPV6_ADDR_GEN_MODE="stable-privacy" ← IPv6 stable-privacy addressing s(RFC7217)
NAME="enp1s0"
………
………

Per ulteriori informazioni su cosa fanno queste impostazioni di connessione, esegui:

man nm-settings-ifcfg-rh

Autoconfigurazione indirizzo stateless (SLAAC)

Se il IPV6_AUTOCONF la variabile è impostata su yes , quindi il metodo SLAAC viene utilizzato per configurare l'indirizzo IPv6 dell'host utilizzando il Neighbor Discovery Protocol (NDP). La tecnica qui applicata è quella spiegata nella sezione Multicast dell'articolo precedente, dove c'è uno scambio di messaggi di richiesta client e pubblicità router ICMPv6.

Usiamo il termine stateless perché non esiste un servizio per tenere traccia di quali indirizzi IPv6 sono stati assegnati ai client. Piuttosto, l'indirizzo IPv6 è composto da una tecnica chiamata Extended Unique Identifier (EUI-64) in cui vengono aggiunti 16 bit all'indirizzo Media Access Control (MAC) (che ha 48 bit), creando così un indirizzo IPv6 univoco a livello globale.

DHCPv6

Per utilizzare DHCPv6, nel file di configurazione dovrebbe essere visualizzato quanto segue:

IPV6_AUTOCONF="no"
DHCPV6C=”yes”

Se il DHCPv6 la variabile è impostata su yes , quindi un client ottiene un indirizzo IP dal pool DHCPv6. Il servizio DHCPv6 tiene quindi traccia di quali indirizzi IPv6 sono assegnati a quali client. Tra l'indirizzo IP, altre informazioni come server DNS, tempo di locazione, nomi host e altri attributi vengono inviati al client. Un amministratore deve configurare il pool di indirizzi IPv6 per poter servire i client.

Manuale

È anche possibile (ma non consigliato) configurare manualmente un indirizzo IPv6. La configurazione manuale richiede molto sforzo, è soggetta a errori ed è difficile tenere traccia di quali indirizzi IPv6 sono assegnati a quali client. Su una rete di grandi dimensioni, è preferibile un server DHCPv6 per eseguire questa attività.

Per configurare manualmente IPv6 su Red Hat Enterprise Linux 7 e 8, la tua versione di quanto segue deve essere aggiunta al file di configurazione:

[root@rhel8 ~]# cat /etc/sysconfig/network-scripts/ifcfg-enp1s0
………  
………
IPV6ADDR=2a01:1b0:5389:4::22f2
IPV6_DEFAULTGW=2a01:1b0:5389:4::22f0
………  
………

Oppure puoi configurare manualmente tramite NetworkManager:

nmcli con mod enp1s0 ipv6.addresses "2a22:1d0:5222:4::22f2/64" gw6 "2a22:1d0:5222:4::22f0/64"
nmcli con mod enp1s0 ipv6.method manual

Test della connettività IPv6

Per testare la connettività IPv6, possiamo eseguire un ping6 su www.redhat.com:

ping6 -c2  www.redhat.com

PING www.redhat.com(g2a02-26f0-b200-018f-0000-0000-0000-0d44.deploy.static.akamaitechnologies.com (2a02:26f0:b200:18f::d44)) 56 data bytes
64 bytes from g2a02-26f0-b200-018f-0000-0000-0000-0d44.deploy.static.akamaitechnologies.com (2a02:26f0:b200:18f::d44): icmp_seq=1 ttl=58 time=8.43 ms

--- www.redhat.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 8.425/8.425/8.425/0.000 ms

Mentre il ping era in esecuzione, ho eseguito Wireshark in background per vedere cosa stava succedendo sotto il cofano. Ecco il pacchetto di richiesta ICMPv6 (inviato da me) e il pacchetto di risposta ICMPv6 che ho ricevuto indietro.

Richiesta ICMPv6

No.  Time  Source  Destination  Protocol Length Info
18 3.471783469  2a01:1b0:5389:2:ccff:cdcd:6ccd:dc0d 2a02:26f0:7b:28a::d44 ICMPv6  118  Echo (ping) request id=0x68d7, seq=1, hop limit=64 (reply in 24)

Frame 18: 118 bytes on wire (944 bits), 118 bytes captured (944 bits) on interface 0
Ethernet II, Src: HonHaiPr_74:2a:27 (ad:bc:dd:fa:da:ee), Dst: Ubiquiti_77:dd:a5 (aa:bb:cc:dd:ee:ff)
   Destination: Ubiquiti_77:dd:a5 (aa:bb:cc:dd:ee:ff)
      Address: Ubiquiti_77:dd:a5 (aa:bb:cc:dd:ee:ff)
      .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
      .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
   Source: HonHaiPr_74:2a:27 (ad:bc:dd:fa:da:ee)
      Address: HonHaiPr_74:2a:27 (ad:bc:dd:fa:da:ee)
      .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
      .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
   Type: IPv6 (0x86dd)
Internet Protocol Version 6, Src: 2a01:1b0:5389:2:ccff:cdcd:6ccd:dc0d, Dst: 2a02:26f0:7b:28a::d44
   0110 .... = Version: 6
   .... 0000 0000 .... .... .... .... .... = Traffic Class: 0x00 (DSCP: CS0, ECN: Not-ECT)
      .... 0000 00.. .... .... .... .... .... = Differentiated Services Codepoint: Default (0)
      .... .... ..00 .... .... .... .... .... = Explicit Congestion Notification: Not ECN-Capable Transport (0)
   .... .... .... 1010 0010 1001 1110 0100 = Flow Label: 0xa29e4
   Payload Length: 64
   Next Header: ICMPv6 (58)
   Hop Limit: 64
   Source: 2a01:1b0:5389:2:ccff:cdcd:6ccd:dc0d
   Destination: 2a02:26f0:7b:28a::d44
   [Source GeoIP: NL]
   [Destination GeoIP: ]
Internet Control Message Protocol v6
   Type: Echo (ping) request (128)
   Code: 0
   Checksum: 0xdff6 [correct]
   [Checksum Status: Good]
   Identifier: 0x68d7
   Sequence: 1
   [Response In: 24]
   Data (56 bytes)

Risposta ICMPv6

No.  Time  Source  Destination  Protocol Length Info
24 3.607831042  2a02:26f0:7b:28a::d44 2a01:1b0:5389:2:ccff:cdcd:6ccd:dc0d ICMPv6  118  Echo (ping) reply id=0x68d7, seq=1, hop limit=59 (request in 18)

Frame 24: 118 bytes on wire (944 bits), 118 bytes captured (944 bits) on interface 0
Ethernet II, Src: Ubiquiti_77:dd:a5 (aa:bb:cc:dd:ee:ff), Dst: HonHaiPr_74:2a:27 (ad:bc:dd:fa:da:ee)
   Destination: HonHaiPr_74:2a:27 (ad:bc:dd:fa:da:ee)
      Address: HonHaiPr_74:2a:27 (ad:bc:dd:fa:da:ee)
      .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
      .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
   Source: Ubiquiti_77:dd:a5 (aa:bb:cc:dd:ee:ff)
      Address: Ubiquiti_77:dd:a5 (aa:bb:cc:dd:ee:ff)
      .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
      .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
   Type: IPv6 (0x86dd)
Internet Protocol Version 6, Src: 2a02:26f0:7b:28a::d44, Dst: 2a01:1b0:5389:2:ccff:cdcd:6ccd:dc0d
   0110 .... = Version: 6
   .... 0000 0000 .... .... .... .... .... = Traffic Class: 0x00 (DSCP: CS0, ECN: Not-ECT)
      .... 0000 00.. .... .... .... .... .... = Differentiated Services Codepoint: Default (0)
      .... .... ..00 .... .... .... .... .... = Explicit Congestion Notification: Not ECN-Capable Transport (0)
   .... .... .... 1000 0110 0011 0011 0111 = Flow Label: 0x86337
   Payload Length: 64
   Next Header: ICMPv6 (58)
   Hop Limit: 59
   Source: 2a02:26f0:7b:28a::d44
   Destination: 2a01:1b0:5389:2:ccff:cdcd:6ccd:dc0d
   [Source GeoIP: ]
   [Destination GeoIP: NL]
Internet Control Message Protocol v6
   Type: Echo (ping) reply (129)
   Code: 0
   Checksum: 0xdef6 [correct]
   [Checksum Status: Good]
   Identifier: 0x68d7
   Sequence: 1
   [Response To: 18]
   [Response Time: 136.048 ms]
   Data (56 bytes)

Tieni presente che molte organizzazioni scelgono di bloccare le richieste di ping per motivi di sicurezza, quindi è generalmente una buona idea provare a eseguire il ping su più siti durante il test della connettività.


Linux
  1. Installa Red Hat Enterprise Linux in modalità grafica

  2. Installa Red Hat Enterprise Linux in modalità testo

  3. Ottimizzazione di un'immagine ISO di installazione di Red Hat Enterprise Linux

  4. Che cos'è un indirizzo IP? Esempi di indirizzi IPv4 e IPv6

  5. Installazione di IBM DB2 su Red Hat Enterprise Linux

Scarica Red Hat Linux

RHEL 6 – Guida all'installazione del server Red Hat Enterprise Linux passo dopo passo

Red Hat Enterprise Linux (RHEL) 8 passaggi di installazione con schermate

Come installare Red Hat Enterprise Linux 8 (RHEL 8)

Installazione e configurazione di Jenkins in Linux

Come trovare il tuo indirizzo IP (IPv4 e IPv6) su Rocky Linux