Attualmente vengono supportati gli script di rete modulari, il che significa che si può aggiungere il supporto per nuovi tipi di interfaccia e moduli di configurazione mantenendo allo stesso tempo la compatibilità con quelli esistenti.
I moduli vengono caricati in modo predefinito se il pacchetto che essi necessitano è installato. Se si specifica un modulo che non ha installato il suo pacchetto, si ottiene un errore che avvisa quale pacchetto necessita di essere installato. Idealmente, le impostazioni per i moduli sono da usare solamente quando si hanno due o più pacchetti installati che forniscono lo stesso servizio e si deve preferire uno rispetto ad un altro.
# Si preferisce ifconfig piuttosto che iproute2 modules="ifconfig"# Si possono anche specificare altri moduli per una interfaccia # In questo caso si preferisce pump su dhcpcd modules_eth0="pump"# Si possono anche specificare quali moduli non usare - per esempio # si potrebbe usare un supplicant o un linux-wlan-ng per controllare # la configurazione wireless ma volere ancora configurare le impostazioni di # rete per ESSID che sono associate. modules="!iwconfig"
Sono fornite due utilità di configurazione delle interfacce:
# emerge sys-apps/iproute2# Preferire ifconfig invece di iproute2 se entrambi sono installati # visto che openrc preferisce iproute2 modules="ifconfig"
Poichè
config_eth0="192.168.0.2/24" config_eth0="192.168.0.2 netmask 255.255.255.0"# Si può anche specificare il broadcast config_eth0="192.168.0.2/24 brd 192.168.0.255" config_eth0="192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255"
DHCP è la possibilità di ottenere informazioni di rete (indirizzo IP, server DNS, Gateway, ecc.) da un server DHCP. Ciò significa che se c'è un server DHCP funzionante sulla rete, basta dire ad ogni client di usare DHCP in modo da fargli impostare la rete da sè. Bisogna configurare altre cose come wireless, ppp o altre se sono richieste, prima di usare DHCP.
DHCP può essere fornito da
| Modulo DHCP | Pacchetto | Pro | Contro |
|---|---|---|---|
Se si ha installato più di un client DHCP, bisogna specificare quale usare,
altrimenti la scelta predefinita sarà
Per passare opzioni specifiche al modulo dhcp, usare
L'obiettivo è quello di rendere DHCP più semplice, perciò vengono supportati i
seguenti comandi usando la variabile
# Necessario solamente se sono stati installati più moduli DHCP modules="dhcpcd" config_eth0="dhcp" dhcpcd_eth0="-t 10"# Timeout dopo 10 secondi dhcp_eth0="release nodns nontp nonis"# Ottiene solo un indirizzo
Prima bisogna installare il software ADSL.
# emerge net-dialup/ppp
Poi, creare lo script net per PPP e quello per l'interfaccia di rete usata da PPP.
# ln -s /etc/init.d/net.lo /etc/init.d/net.ppp0 # ln -s /etc/init.d/net.lo /etc/init.d/net.eth0
Assicurarsi di impostare
Ora bisogna configurare
config_eth0=( null )(Specificare la propria interfaccia ethernet) config_ppp0=( "ppp" ) link_ppp0="eth0"(Specificare la propria interfaccia ethernet) plugins_ppp0=( "pppoe" ) username_ppp0='user' password_ppp0='password' pppd_ppp0= noauth defaultroute usepeerdns holdoff 3 child-timeout 60 lcp-echo-interval 15 lcp-echo-failure 3 noaccomp noccp nobsdcomp nodeflate nopcomp novj novjccomp" rc_need_ppp0="net.eth0"
La password può essere anche impostata in
# L'asterisco * è importante "username" * "password"
Se si utilizza PPPoE con un modem USB bisogna installare
APIPA cerca di trovare un indirizzo libero tra 169.254.0.0-169.254.255.255 con un arping di un indirizzo casuale, incluso nella gamma di indirizzi summenzionati, sull'interfaccia. Se non c'è nessuna risposta allora si assegna questo indirizzo all'interfaccia.
L'uso di APIPA è utile per le LAN in cui non c'è nessun server DHCP e non ci si connette direttamente a Internet e tutti gli altri computer utilizzano APIPA.
Per il supporto ad APIPA installare
# Cercare DHCP - se fallisce passare ad APIPA config_eth0="dhcp" fallback_eth0="apipa"# Usare APIPA config_eth0="apipa"
Per poter effettuare il bonding/trunking (ndT: unione/aggregazione) di
collegamenti installare
Il bonding è usato per aumentare la larghezza di banda della rete. Se si hanno due schede di rete sulla stessa rete, si possono collegare insieme in modo che le applicazioni vedano una sola interfaccia ma in realtà utilizzino entrambe le due schede di rete.
# Per collegare le interfacce slaves_bond0="eth0 eth1 eth2"# Si può non assegnare un IP all'interfaccia collegata config_bond0="null"# Dipende da eth0, eth1 e eth2 poichè essi possono richiedere una configurazione extra rc_need_bond0="net.eth0 net.eth1 net.eth2"
Per il supporto al "bridging" installare
Il bridging è usato per collegare insieme delle reti. Per esempio, si ha un server che si connette a Internet con un modem ADSL e una scheda wireless access che permette a altri computer di connettersi a Internet con il modem ADSL. Si può creare un "bridge" (ponte) per unire le due interfacce.
# Configurare il bridge - "man brctl" per ulteriori dettagli brctl_br0="setfd 0" "sethello 0" "stp off"# Per aggiungere delle porte al bridge br0 bridge_br0="eth0 eth1"# Si devono configurare le porte con valori null in modo da non avviare dhcp config_eth0="null" config_eth1="null"# Dare un indirizzo al bridge - si può usare DHCP config_br0="192.168.0.1/24"# Dipende da eth0 e eth1 poichè essi possono richiedere una configurazione aggiuntiva rc_need_br0="net.eth0 net.eth1"
Se se ne ha la necessità, è possibile cambiare anche l'indirizzo MAC di una interfaccia attraverso il file di configurazione della rete.
# Impostare l'indirizzo MAC all'interfaccia mac_eth0="00:11:22:33:44:55"# Per rendere casuali solo gli ultimi 3 byte mac_eth0="random-ending"# Per rendere casuale tra lo stesso tipo fisico di connessione (esempio # fibra, copper, wireless), tutti i fornitori mac_eth0="random-samekind"# Per rendere casuale tra qualsiasi tipo fisico di connessione (esempio # fibra, copper, wireless), tutti i fornitori mac_eth0="random-anykind"# Casualità completa - ATTENZIONE: alcuni indirizzi MAC generati # da questo esempio potrebberoNON funzionare come previso mac_eth0="random-full"
Non occorre installare niente per il tunnelling in quanto il gestore dell'interfaccia lo fa già da sè.
# Per tunnel GRE iptunnel_vpn0="mode gre remote 207.170.82.1 key 0xffffffff ttl 255"# Per tunnel IPIP iptunnel_vpn0="mode ipip remote 207.170.82.2 ttl 255"# Per configurare l'interfaccia config_vpn0="192.168.0.2 peer 192.168.1.1"
Per il supporto alle VLAN installare
Virtual LAN è un gruppo di dispositivi di rete che si comportano come se fossero connessi ad un singolo segmento di rete, anche se realmente non lo sono. I membri della VLAN possono solo vedere i membri della stessa VLAN anche se potrebbero condividere la stessa rete.
# Specificare i numeri VLAN per le interfacce in questo modo # Assicurarsi che gli ID di VLAN NON abbiano degli zeri riempitivi vlans_eth0="1 2"# Si può anche configurare la VLAN # vedere la pagina man di vconfig per ulteriori dettagli vconfig_eth0="set_name_type VLAN_PLUS_VID_NO_PAD" vconfig_vlan1="set_flag 1" "set_egress_map 2 6"# Configurare l'interfaccia come al solito config_vlan1=( "172.16.3.1 netmask 255.255.254.0" config_vlan2=( "172.16.2.1 netmask 255.255.254.0"