La rete e gli instradamenti con NLNX

Questo capitolo mostra alcune situazioni per cui NLNX è predisposto, per quanto riguarda il collegamento a una rete. Si osservi che NLNX è organizzato per funzionare correttamente in reti IPv4, anche senza la risoluzione dei nomi locali; pertanto, la lettura di questo capitolo e l'utilizzo relativo di NLNX presuppongono una conoscenza adeguata delle reti IPv4 (capitolo 32 e successivi).

Per quanto riguarda la gestione delle interfacce di rete senza filo, va tenuto in considerazione che NLNX le gestisce solo nella modalità di funzionamento managed, ovvero si richiede la presenza di almeno un punto di accesso. Se si vuole usare una modalità di tipo ad-hoc, lo script nlnxrc non può essere usato per gestire tali interfacce.

In un altro capitolo appare una tabella con le opzioni che si possono usare all'avvio, caratterizzate per avere il prefisso n_ (tabella u45.2). Molte di quelle opzioni consentono di intervenire nella configurazione della rete, ma solo nel caso di un elaboratore con un'interfaccia di rete singola. L'uso di quelle opzioni prevale sulla configurazione memorizzata diversamente e anche sull'uso eventuale di un servente DHCP.

Interfacce di rete senza fili

Le interfacce di rete senza fili, se il kernel è in grado di gestirle, vengono configurate normalmente, nello stesso modo di quelle Ethernet, attraverso lo script nlnxrc. Tuttavia, può darsi che la propria interfaccia richieda l'uso di NDISwrapper per gestire un file binario fatto per MS-Windows. In tal caso, i file necessari a NDISwrapper vanno messi nella directory /etc/windows-drivers/wifi/ e da lì vengono caricati automaticamente attraverso lo script /etc/init.d/nlnx.ndiswrapper, chiamato a sua volta da /etc/init.d/nlnx.network.

A titolo di esempio, la propria interfaccia di rete potrebbe richiedere l'installazione di un driver attraverso il programma setup.exe. Questo programma, in realtà, incorpora alcuni file che vanno estratti, ma non disponendo di uno strumento adatto, occorre eseguirlo, attraverso WINE, il quale va usato da un terminale durante una sessione grafica di lavoro:

wine setup.exe[Invio]

Il programma mostra probabilmente delle finestre di dialogo per richiedere la conferma della licenza e del percorso in cui installare i file che servono a gestire l'interfaccia. In questo caso si presume che sia stato proposto (e confermato) il percorso C:\Program Files\NETGEAR\WG311v3\. Ovviamente, in un sistema GNU/Linux non esiste un tale percorso, ma nella gestione di WINE potrebbe corrispondere a ~/.wine/drive_c/Program Files/NETGEAR/WG311v3/. Tra i vari file che possono trovarsi nella destinazione prevista, vanno scelti quelli con estensioni .inf, .cat e .sys. Si suppone che siano stati ottenuti precisamente i file WG311v3.INF, WG311v3.cat, WG311v3.sys e WG311v3XP.sys.(1)

I file trovati vanno collocati nella directory /etc/windows-drivers/wifi/, come già accennato. Se questi file sono quelli giusti, avviando manualmente il comando /etc/init.d/nlnx.ndiswrapper si dovrebbe osservare che un'interfaccia wlann risulta attiva:

iwconfig[Invio]

wlan1     IEEE 802.11g  ESSID:off/any  
          Mode:Managed  Channel:0  Access Point: Not-Associated
          Bit Rate:1 Mb/s   Sensitivity=-200 dBm  
          RTS thr=2346 B   Fragment thr=2346 B   
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

Va però osservato che non si può produrre un DVD live o altra forma di NLNX per la distribuzione contenente tali file per MS-Windows, perché di norma si tratta di software proprietario (non libero). Pertanto, per assicurare che questo principio venga rispettato, durante la produzione del DVD, le directory /etc/windows-drivers/*/ vengono svuotate automaticamente nella destinazione. Eventualmente, per forzare questa situazione, occorre modificare lo script /etc/init.d/nlnx.ndiswrapper in modo che carichi i file di gestione delle interfacce da un'altra collocazione. Sull'argomento si può leggere anche il capitolo 32.7.

Individuazione delle interfacce di rete

Le interfacce di rete Ethernet sono identificate da nomi del tipo eth0, eth1,... ethn, oppure wlan0, wlan1,... wlann, nel caso di quelle per i collegamenti senza fili. Ma l'attribuzione del numero n alle interfacce non è controllabile. In pratica, può capitare che la prima e unica interfaccia di rete abbia il nome eth7. Quando si vogliono realizzare delle configurazioni abbastanza uniformi tra elaboratori che hanno una sola interfaccia di rete Ethernet, è improbabile che il nome attribuito all'interfaccia di rete sia lo stesso.

Con NLNX, quando si indica il nome di un'interfaccia Ethernet si può usare il nome effettivo (eth0, eth1,... wlan0, wlan1, ecc...), oppure si può fare riferimento a una variabile. Sono previste diverse variabili per questo scopo, da annotare esattamente così: $ETH0, $ETH1, $ETH2, oppure $WLAN0, $WLAN1, $WLAN2. Questi nomi si riferiscono, rispettivamente, alla prima, alla seconda e alla terza interfaccia Ethernet, oppure alla prima, alla seconda e alla terza interfaccia WiFi, indipendentemente dal nome effettivo che gli viene attribuito automaticamente. Inoltre, è possibile usare la sigla AUTO per scegliere automaticamente la prima interfaccia, senza dover sapere se di tipo eth... o wlan.... Negli esempi dei capitoli, si intende utilizzare questa rappresentazione generica.

Connessione in una rete locale tradizionale

L'utilizzo di NLNX in una rete locale, che può disporre eventualmente di un router, si configura normalmente attraverso lo script nlnxrc, senza bisogno di intervenire direttamente con iwconfig, ifconfig e route.

La configurazione predefinita di NLNX prevede l'uso del protocollo DHCP, in modo da attribuire automaticamente l'indirizzo alla prima interfaccia di rete e anche l'instradamento necessario a uscire dalla rete locale.

Figura u58.2. Utilizzo di NLNX in una rete locale tipica.

schema rete locale con collegamento attraverso un router

La figura mostra una situazione pratica: l'elaboratore in cui è in funzione NLNX deve utilizzare l'indirizzo IPv4 192.168.1.7 (in quanto si trova nella rete 192.168.1.0/255.255.255.0) e può accedere all'esterno della rete locale attraverso un router NAT raggiungibile all'indirizzo 192.168.1.254. Per configurare NLNX attraverso nlnxrc si procede nel modo seguente:

nlnxrc network config[Invio]

.------Internal network interface name--------.
| Please insert the real internal network     |
| interface name. To get auto configuration   |
| write "AUTO", to select the first Ethernet  |
| interface write "$ETH0", to select the      |
| first WLAN interface write "$WLAN0" and so  |
| on.                                         |
| .-----------------------------------------. |
| |$ETH0                                    | |
| `-----------------------------------------' |
|---------------------------------------------|
|           <  OK  >      <Cancel>            |
`---------------------------------------------'

$ETH0<OK>

Qui è stata specificata la variabile $ETH0, per fare riferimento alla prima interfaccia di rete Ethernet che risulti essere disponibile. Ma trattandosi dell'unica interfaccia presente, avrebbe potuto essere inserita la voce generica AUTO, ottenendo lo stesso risultato.

.------Internal network interface address---------.
| Please insert the internal network interface    |
| IPv4 address.                                   |
| If you want to use auto configuration with      |
| DHCP, please write the word "AUTO" instead of   |
| the IPv4 address.                               |
| .---------------------------------------------. |
| |                                             | |
| `---------------------------------------------' |
|-------------------------------------------------|
|             <  OK  >       <Cancel>             |
`-------------------------------------------------'

192.168.1.7<OK>

Come suggerisce il riquadro, volendo dichiarare esplicitamente di voler utilizzare il protocollo DHCP, al posto dell'indirizzo IPv4 si deve inserire la parola chiave AUTO. Ma in tal caso, le richieste successive non vengono fatte all'utente.

.--------Internal netmask----------.
| Please insert the internal IPv4  |
| network mask. Please note that   |
| the default netmask for the      |
| address class is 255.255.255.0:  |
| .------------------------------. |
| |255.255.255.0                 | |
| `------------------------------' |
|                                  |
|----------------------------------|
|       <  OK  >    <Cancel>       |
`----------------------------------'

255.255.255.0<OK>

.Internal network router address--.
| Please insert the internal      |
| network IPv4 router address, or |
| leave it blank if you don't     |
| have one:                       |
| .-----------------------------. |
| |                             | |
| `-----------------------------' |
|---------------------------------|
|     <  OK  >   <Cancel>         |
`---------------------------------'

192.168.1.254<OK>

Si osservi che se la rete locale dovesse essere sprovvista di un router (una rete locale isolata), è importante evitare di indicare come indirizzo del router lo stesso indirizzo dell'interfaccia di rete locale, perché la concomitanza degli indirizzi fa presumere alla procedura prevista per NLNX che il nodo locale sia precisamente un router nei confronti della rete locale. Pertanto, in mancanza di un router, il dato va lasciato in bianco.

.-------------/etc/resolv.conf----------------.
| Do you need a default "/etc/resolv.conf"?   |
|                                             |
| Answer "No" if you want to keep it          |
| unchanged.                                  |
|---------------------------------------------|
|           < Yes >      < No  >              |
`---------------------------------------------'

<Yes>

Un risultato equivalente avrebbe potuto essere ottenuto attraverso le opzioni di avvio seguenti:

n_nic=$ETH0 n_ipv4=192.168.1.7
n_subnet_mask=255.255.255.0
n_router=192.168.1.254

Connessione in una rete locale via radio

NLNX può essere connesso alla rete locale anche con un'interfaccia WiFi, purché il kernel sia in grado di gestirla. Si procede in modo analogo a quanto già spiegato per la connessione tradizione. L'esempio successivo si riferisce all'elaboratore 192.168.1.21 che appare in figura.

Figura u58.8. Utilizzo di NLNX in una rete locale via radio.

schema rete locale con collegamento attraverso un router

nlnxrc network config[Invio]

.------Internal network interface name--------.
| Please insert the real internal network     |
| interface name. To get auto configuration   |
| write "AUTO", to select the first Ethernet  |
| interface write "$ETH0", to select the      |
| first WLAN interface write "$WLAN0" and so  |
| on.                                         |
| .-----------------------------------------. |
| |$WLAN0                                   | |
| `-----------------------------------------' |
|---------------------------------------------|
|           <  OK  >      <Cancel>            |
`---------------------------------------------'

$WLAN0<OK>

Come nel caso dell'interfaccia di rete Ethernet, qui si utilizza la variabile $WLAN0 per fare riferimento genericamente alla prima interfaccia di rete via radio. Anche in questo caso sarebbe possibile inserire la parola chiave AUTO, per fare riferimento genericamente alla prima interfaccia di rete disponibile, ma in questo modo non sarebbe possibile definire una parte della configurazione.(2)

.-INTERNAL interface ESSID---.
| Please insert the INTERNAL |
| interface ESSID string:    |
| .------------------------. |
| |nlnx-wifi               | |
| `------------------------' |
|----------------------------|
|   <  OK  >  <Cancel>       |
`----------------------------'

Trattandosi di un'interfaccia di rete senza fili, occorre specificare l'identificativo ESSID stabilito per comunicare con il punto di accesso. Si suppone che corrisponda proprio alla stringa «nlnx-wifi»:

nlnx-wifi<OK>

.-INTERNAL interface encryption selection---.
| Please select the encryption type:        |
| .---------------------------------------. |
| |   WPA-PSK  previous_value             | |
| |   NONE     clear text communication   | |
| |   WEP      WEP40/WEP104 encryption    | |
| |   WPA-PSK  WPA-PSK encryption         | |
| `---------------------------------------' |
|-------------------------------------------|
|         <  OK  >     <Cancel>             |
`-------------------------------------------'

Va quindi specificata il tipo di comunicazione. In questo caso si tratta di un collegamento cifrato secondo la modalità WPA con chiave segreta, di cui ogni nodo deve essere a conoscenza:

WPA-PSK<OK>

.INTERNAL interface WPA-PSK passphrase--.
| Insert the INTERNAL interface WPA-PSK |
| passphrase, writing an hexadecimal    |
| value or a string delimited with      |
| "...".                                |
| .-----------------------------------. |
| |                                   | |
| `-----------------------------------' |
|---------------------------------------|
|         <  OK  >     <Cancel>         |
`---------------------------------------'

Pertanto va specificata la chiave segreta, ovvero la parola d'ordine. In questo caso la parola d'ordine è racchiusa tra apici doppi, per precisare che si tratta di una stringa; diversamente, senza essere delimitata, si intenderebbe una sequenza esadecimale.

"supersegretissimo"<OK>

Si prosegue quindi con le informazioni consuete, tenendo conto che anche in questo caso ci si può avvalere del DHCP, indicando la parola chiave AUTO, al posto dell'indirizzo IPv4:

.------Internal network interface address---------.
| Please insert the internal network interface    |
| IPv4 address.                                   |
| If you want to use auto configuration with      |
| DHCP, please write the word "AUTO" instead of   |
| the IPv4 address.                               |
| .---------------------------------------------. |
| |                                             | |
| `---------------------------------------------' |
|-------------------------------------------------|
|             <  OK  >       <Cancel>             |
`-------------------------------------------------'

192.168.1.21<OK>

.--------Internal netmask----------.
| Please insert the internal IPv4  |
| network mask. Please note that   |
| the default netmask for the      |
| address class is 255.255.255.0:  |
| .------------------------------. |
| |255.255.255.0                 | |
| `------------------------------' |
|                                  |
|----------------------------------|
|       <  OK  >    <Cancel>       |
`----------------------------------'

255.255.255.0<OK>

.Internal network router address--.
| Please insert the internal      |
| network IPv4 router address, or |
| leave it blank if you don't     |
| have one:                       |
| .-----------------------------. |
| |                             | |
| `-----------------------------' |
|---------------------------------|
|     <  OK  >   <Cancel>         |
`---------------------------------'

192.168.1.254<OK>

.-------------/etc/resolv.conf----------------.
| Do you need a default "/etc/resolv.conf"?   |
|                                             |
| Answer "No" if you want to keep it          |
| unchanged.                                  |
|---------------------------------------------|
|           < Yes >      < No  >              |
`---------------------------------------------'

<Yes>

Un risultato equivalente avrebbe potuto essere ottenuto attraverso le opzioni di avvio seguenti:

n_nic=$WLAN0 n_w_essid=nlnx-wifi
n_w_encryption=WPA-PSK
n_w_wpa_psk="supersegretissimo" n_ipv4=192.168.1.21
n_subnet_mask=255.255.255.0 n_router=192.168.1.254

Connessione automatica in una rete non cifrata

Per connettersi a una rete WiFi non cifrata, non è necessario conoscere l'identificativo ESSID. Pertanto, per la configurazione, questa informazione va lasciata in bianco:

.-INTERNAL interface ESSID---.
| Please insert the INTERNAL |
| interface ESSID string:    |
| .------------------------. |
| |                        | |
| `------------------------' |
|----------------------------|
|   <  OK  >  <Cancel>       |
`----------------------------'

<OK>

.-INTERNAL interface encryption selection---.
| Please select the encryption type:        |
| .---------------------------------------. |
| |   WPA-PSK  previous_value             | |
| |   NONE     clear text communication   | |
| |   WEP      WEP40/WEP104 encryption    | |
| |   WPA-PSK  WPA-PSK encryption         | |
| `---------------------------------------' |
|-------------------------------------------|
|         <  OK  >     <Cancel>             |
`-------------------------------------------'

NONE<OK>

...

È da osservare che la configurazione predefinita che si ottiene dalla produzione di un nuovo DVD live (o equivalente) prevede proprio la selezione automatica dell'identificativo ESSID con una rete non cifrata.

Per questo tipo di configurazione, nella quale la comunicazione è in chiaro e l'identificativo ESSID non viene specificato, è sufficiente indicare la parola chiave AUTO al posto dell'interfaccia di rete.

Router per una rete locale

NLNX può essere usato anche per intervenire in qualità di router al servizio di una rete locale, per la connessione con una rete esterna. Si immagina una situazione simile a quella della figura successiva.

Figura u58.19. NLNX utilizzato come router.

router per collegare una rete locale a una rete più grande

Nella figura, il router si colloca tra due reti: 172.21.*.* e 192.168.1.*. Per la precisione, la rete 172.21.*.* accede all'esterno attraverso la trasformazione degli indirizzi (NAT), perché si presume che gli instradamenti nella rete 192.168.1.* consentano di raggiungere l'esterno (Internet), ma non di accedere alla rete 172.21.*.*.

nlnxrc network config[Invio]

.------Internal network interface name--------.
| Please insert the real internal network     |
| interface name. To get auto configuration   |
| write "AUTO", to select the first Ethernet  |
| interface write "$ETH0", to select the      |
| first WLAN interface write "$WLAN0" and so  |
| on.                                         |
| .-----------------------------------------. |
| |$ETH0                                    | |
| `-----------------------------------------' |
|---------------------------------------------|
|           <  OK  >      <Cancel>            |
`---------------------------------------------'

$ETH0<OK>

.Internal network interface address--.
| Please insert the internal network |
| interface IPv4 address:            |
| .--------------------------------. |
| |                                | |
| `--------------------------------' |
|------------------------------------|
|       <  OK  >    <Cancel>         |
`------------------------------------'

172.21.254.254<OK>

.-----Internal netmask-------.
| Please insert the internal |
| IPv4 network mask:         |
| .------------------------. |
| |255.255.0.0             | |
| `------------------------' |
|----------------------------|
|   <  OK  >  <Cancel>       |
`----------------------------'

255.255.0.0<OK>

.Internal network router address--.
| Please insert the internal      |
| network IPv4 router address:    |
| .-----------------------------. |
| |                             | |
| `-----------------------------' |
|---------------------------------|
|     <  OK  >   <Cancel>         |
`---------------------------------'

172.21.254.254<OK>

Dal momento che l'indirizzo del router per la rete interna coincide con l'indirizzo dell'interfaccia, la procedura intende che si debba specificare anche il collegamento con l'esterno:

.----External network interface name------.
| Please insert the real external network |
| interface name. To select the first     |
| Ethernet interface write "$ETH0", to    |
| select the first WLAN interface write   |
| "$WLAN0" and so on.                     |
| .-------------------------------------. |
| |$ETH1                                | |
| `-------------------------------------' |
|-----------------------------------------|
|         <  OK  >     <Cancel>           |
`-----------------------------------------'

Per funzionare correttamente, un router con le funzionalità che si richiedono qui deve avere due interfacce. Nel caso si trattasse di una sola interfaccia ci possono essere delle funzionalità che vengono a mancare, in ogni caso si deve inserire sempre il nome reale dell'interfaccia, non un alias.

$ETH1<OK>

.External network interface address--.
| Please insert the external network |
| interface IPv4 address:            |
| .--------------------------------. |
| |                                | |
| `--------------------------------' |
|------------------------------------|
|       <  OK  >    <Cancel>         |
`------------------------------------'

192.168.1.253<OK>

.-----External netmask-------.
| Please insert the external |
| IPv4 network mask:         |
| .------------------------. |
| |255.255.255.0           | |
| `------------------------' |
|----------------------------|
|   <  OK  >  <Cancel>       |
`----------------------------'

255.255.255.0<OK>

.External network router address--.
| Please insert the external      |
| network IPv4 router address:    |
| .-----------------------------. |
| |                             | |
| `-----------------------------' |
|---------------------------------|
|     <  OK  >   <Cancel>         |
`---------------------------------'

192.168.1.254<OK>

.----Transparent proxy------.
| Is this router a          |
| transparent proxy?        |
|---------------------------|
|     < Yes >   < No  >     |
`---------------------------'

Potrebbe essere conveniente sfruttare il proxy imponendo il suo utilizzo da parte della rete locale:

<Yes>

Il router che si ottiene si comporta anche come firewall, secondo una configurazione di massima che dovrebbe impedire alcuni tipi di accesso dall'esterno. Tuttavia, se esistono effettivamente dei problemi di sicurezza, la configurazione del firewall deve essere valutata personalmente da chi si incarica di realizzare una rete locale del genere; eventualmente è possibile modificare lo script /etc/init.d/nlnx.network. Le istruzioni che riguardano la configurazione in qualità di router iniziano a partire dalla porzione di codice evidenziata dal confronto tra l'indirizzo locale e l'indirizzo del router interno:

...
    elif    [ "$INTERNAL_IPV4" = "$INTERNAL_ROUTER" ]
    then
        ##
        ## This is the router for the local network.
        ##
...

L'esempio mostrato fa riferimento a indirizzi IPv4 privati sia dal lato interno, sia dal lato esterno del router. Con questo esempio si vuole individuare una situazione che potrebbe essere abbastanza comune: una rete locale gestita attraverso un router la cui configurazione non può essere cambiata, senza la disponibilità di indirizzi privati a sufficienza per le esigenze di tutte le reti. Con la soluzione proposta dall'esempio, si va a utilizzare un solo indirizzo nell'ambito della rete precedente, aggiungendo un altro router per un'altra rete locale che comunque sarebbe irraggiungibile nell'ambito di quella preesistente (per mancanza di instradamenti), pertanto si rende necessario il NAT nel nuovo router inserito.

Router per una rete locale, attraverso un proxy

Se non esiste altra possibilità di accedere alla rete esterna se non attraverso un proxy HTTP, è possibile tentare di organizzare la configurazione del router NLNX in modo che il proprio proxy faccia riferimento a quello disponibile. Questo è comunque condizionato alla disponibilità di un servizio di risoluzione dei nomi a dominio (DNS) accessibile. Si immagina una situazione simile a quella della figura successiva.

Figura u58.30. NLNX utilizzato come router che deve avvalersi di un proxy.

router per collegare una rete locale a una rete più grande

Come già visto in un esempio di un'altra sezione, nella figura, il router si colloca tra due reti: 172.21.*.* e 192.168.1.*.

nlnxrc network config[Invio]

.------Internal network interface name--------.
| Please insert the real internal network     |
| interface name. To get auto configuration   |
| write "AUTO", to select the first Ethernet  |
| interface write "$ETH0", to select the      |
| first WLAN interface write "$WLAN0" and so  |
| on.                                         |
| .-----------------------------------------. |
| |$ETH0                                    | |
| `-----------------------------------------' |
|---------------------------------------------|
|           <  OK  >      <Cancel>            |
`---------------------------------------------'

$ETH0<OK>

.Internal network interface address--.
| Please insert the internal network |
| interface IPv4 address:            |
| .--------------------------------. |
| |                                | |
| `--------------------------------' |
|------------------------------------|
|       <  OK  >    <Cancel>         |
`------------------------------------'

172.21.254.254<OK>

.-----Internal netmask-------.
| Please insert the internal |
| IPv4 network mask:         |
| .------------------------. |
| |255.255.0.0             | |
| `------------------------' |
|----------------------------|
|   <  OK  >  <Cancel>       |
`----------------------------'

255.255.0.0<OK>

.Internal network router address--.
| Please insert the internal      |
| network IPv4 router address:    |
| .-----------------------------. |
| |                             | |
| `-----------------------------' |
|---------------------------------|
|     <  OK  >   <Cancel>         |
`---------------------------------'

172.21.254.254<OK>

Dal momento che l'indirizzo del router per la rete interna coincide con l'indirizzo dell'interfaccia, la procedura intende che si debba specificare anche il collegamento con l'esterno:

.----External network interface name------.
| Please insert the real external network |
| interface name. To select the first     |
| Ethernet interface write "$ETH0", to    |
| select the first WLAN interface write   |
| "$WLAN0" and so on.                     |
| .-------------------------------------. |
| |$ETH1                                | |
| `-------------------------------------' |
|-----------------------------------------|
|         <  OK  >     <Cancel>           |
`-----------------------------------------'

Per funzionare correttamente, un router con le funzionalità che si richiedono qui deve avere due interfacce. Nel caso si trattasse di una sola interfaccia ci possono essere delle funzionalità che vengono a mancare, in ogni caso si deve inserire sempre il nome reale dell'interfaccia, non un alias.

$ETH1<OK>

.External network interface address--.
| Please insert the external network |
| interface IPv4 address:            |
| .--------------------------------. |
| |                                | |
| `--------------------------------' |
|------------------------------------|
|       <  OK  >    <Cancel>         |
`------------------------------------'

192.168.1.253<OK>

.-----External netmask-------.
| Please insert the external |
| IPv4 network mask:         |
| .------------------------. |
| |255.255.255.0           | |
| `------------------------' |
|----------------------------|
|   <  OK  >  <Cancel>       |
`----------------------------'

255.255.255.0<OK>

.External network router address--.
| Please insert the external      |
| network IPv4 router address:    |
| .-----------------------------. |
| |                             | |
| `-----------------------------' |
|---------------------------------|
|     <  OK  >   <Cancel>         |
`---------------------------------'

In questo caso, non c'è alcun router esterno da poter raggiungere, pertanto si lascia il campo vuoto:

<OK>

.----Transparent proxy------.
| Is this router a          |
| transparent proxy?        |
|---------------------------|
|     < Yes >   < No  >     |
`---------------------------'

In questo caso, è necessario attivare la funzione di proxy imponendo il suo utilizzo da parte della rete locale:

<Yes>

A questo punto, però, occorre fare delle modifiche manuali. Oltre a espandere la disponibilità di memoria di OOPS, è necessario che questo sia in grado di rinviare le richieste al proxy esterno. Si deve intervenire nei file /etc/oops/oops.cfg e /etc/oops/oops.cfg.nlnx dell'elaboratore che offre questo servizio per la rete locale, aggiungendo le direttive seguenti:

peer    192.168.1.254   8080 0 {
        # my_auth       my_login:my_password;
        parent ;
        allow   dstdomain * ;
}

Per maggiori dettagli sulla configurazione di questa funzionalità di OOPS conviene consultare la sua documentazione originale.

La seconda modifica da apportare riguarda il servizio DNS: non potendo contare su un accesso alla rete esterna, il servente DNS di NLNX non serve a nulla ed è necessario modificare il file /etc/resolv.conf di tutti gli elaboratori della rete locale:

nameserver 192.168.1.1

Questa situazione potrebbe essere complicata ulteriormente se per l'accesso al proxy esterno o al servente DNS è necessario utilizzare un router. In tal caso si comprende che è sufficiente specificare l'indirizzo di tale router esterno, senza lasciare il campo in bianco come è stato fatto negli esempi mostrati in questa sezione.

Indirizzi di rete da evitare assolutamente

Onde evitare inutili perdite di tempo, è bene rammentare che nelle reti con indirizzi privati è necessario evitare alcuni indirizzi di rete, che apparentemente sono innocui. La tabella seguente riepiloga le situazioni più comuni, tenendo conto delle maschere di rete predefinite.

Indirizzo Maschera Motivazione
172.16.0.0 255.255.0.0 L'indirizzo di rete della sottorete è identico all'indirizzo della rete complessiva.
172.31.0.0 255.255.0.0 L'indirizzo broadcast della sottorete è identico all'indirizzo broadcast della rete complessiva.
192.168.0.0 255.255.255.0 L'indirizzo di rete della sottorete è identico all'indirizzo della rete complessiva.
192.168.255.0 255.255.255.0 L'indirizzo broadcast della sottorete è identico all'indirizzo broadcast della rete complessiva.

1) Se l'operazione di estrazione con l'aiuto di WINE fallisce, occorre cercare aiuto in rete, con i dati dell'interfaccia.

2) Scegliendo la voce AUTO, in presenza di un'interfaccia di rete senza fili e di una tradizionale, ha la precedenza quella senza fili, ma la parte di configurazione che non può essere stabilita espressamente prevede una comunicazione in chiaro con qualunque identificativo ESSID.

«a2» 2013.11.11 --- Copyright © Daniele Giacomini -- appunti2@gmail.com http://informaticalibera.net