DHCP e assegnazione IP dinamico [tramite script]

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
lostratega
Linux 1.x
Linux 1.x
Messaggi: 148
Iscritto il: mer 5 mar 2008, 19:32
Nome Cognome: LoStratega
Slackware: 13.0
Kernel: 2.6.29.2
Desktop: KDE 4.2.4
Località: Salamanca (Spain)

DHCP e assegnazione IP dinamico [tramite script]

Messaggio da lostratega »

Salve a tutti

questa volta non mi trovo di fornte ad un problema, ma al desiderio di condividere una sorta di alternativa
che ho trovato per avere l'assegnazione dell'IP dinamico tramite il DHCP.

Premetto che le guide su Slacky sono ottime e che lì è davvero spiegato per bene come intervenire in merito,
per cui non voglio assolutamente né sostituire né integrare la procedura ufficiale, ma solo condividere una semplice esperienza.
Sono nuovo sia di questo forum che di slacky e prima di poterla usare "stabilmente" ho formattato 10 volte la partizione in cui essa risiede,
a causa del fatto che c'era sempre qualcosa che non andava. Una delle ultime era proprio la rete.
Durante il processo di installazione, come sapete, viene chiesta la configurazione della rete tramite netconfig.
Ho sempre provveduto ad assegnare i parametri richiesti, ma siccome ho tre schede di rete sul mio pc
(una ethernet, una wireless intel 2200 e una usb edimax), l'assegnazione automatica dell'IP tramite DHCP
avveniva solo per la prima scheda, ovvero l'ethernet che figura come eth0.
Nonostante ciò, sono riuscito a navigare perchè facevo uso di un programma ad interfaccia grafica chiamato RUTILT, creato
appositamente per gestire i driver della mia scheda edimax che supporta un chip rt73.
Quando però volevo configurare la rete wireless tramite iwconfig con la scheda edimax mi trovavo di fronte al fatto che quest'ultima
non ricevesse l'indirizzo IP proprio perchè esso era in realtà assegnato solo alla scheda di rete ethernet.

Ho letto le relative guide su slacky e ho scoperto che l'unica cosa da fare sarebbe stata modificare un file di configurazione.
Operazione questa [credo] meno ampollosa di ciò che sto per dire.

Siccome sono alle prime armi e trovandomi in Spagna a lavorare sempre con il pc, non posso permettermi il lusso di compromettere
l'unico tipo di connessione che ho, ovvero wireless [e non via cavo]. Mi sono chiesto se vi fosse un modo per ottenere l'IP automatico
anche alle altre schede wifi. Intuivo che ciò era fattibile proprio per il fatto che con l'utilizzo del programma RUTILT il mio scopo era ottenuto,
ma non quando usavo iwconfig.
Ho studiato il manuale di RUTILT e ho scoperto che quest'ultimo fa uso di un semplice script per compiere l'operazione di assegnazione automatica
dell'ip; mi è bastato quindi prendere questo script, metterlo in una qualsiasi directory da me preferita e lanciarlo semplicemente con il comando

./ [nome scipt]

ottenendo il mio scopo, cioè l'assegnazione automatica di IP tramite DHCP e l'impostazione wireless tramite iwconfig [da me effettuata].

Lo scopo di questa soluzione è stata per me vantaggioso perchè mi ha risparmiato di mettere mano a files di configurazione che nello stato attuale delle mie conoscenze potrebbe risultare compromettente per un corretto funzionamento della rete stessa.

il nome dello scipt di RUTILT è : set_ip.sh

esso può essere reperito nella directory principale di RUTILT una volta scaricato dall'indirizzo http://cbbk.free.fr/bonrom/
credo che non necessita di essere installato anche se io per esigenze personali l'ho fatto.

Per avere un corretto funzionamento del tutto, configuro prima la rete tramite iwconfig [quindi da shell] e poi faccio partire lo script.
Dopo qualche secondo la rete è configurata, l'indirizzo ip assegnato e posso navigare anche senza interfaccia grafica.

Con questo appunto spero di non aver deviato la filosofia di slacky che come sappiamo punta sul totale controllo della macchina mettendo l'utente di fronte a delle scelte e configurazioni direttamente dai files [non sempre è così, ma questa è sicuramente la filosofia slackeriana].

il contenuto dello script è il seguente:

Codice: Seleziona tutto

#!/bin/sh
#    Copyright (c) 2005-2007 Romain BONDUE
#    This file is part of RutilT.
#
#    RutilT is free software; you can redistribute it and/or modify
#    it under the terms of the GNU General Public License as published by
#    the Free Software Foundation; either version 2 of the License, or
#    (at your option) any later version.
#
#    RutilT is distributed in the hope that it will be useful,
#    but WITHOUT ANY WARRANTY; without even the implied warranty of
#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#    GNU General Public License for more details.
#
#    You should have received a copy of the GNU General Public License
#    along with RutilT; if not, write to the Free Software
#    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
#
#
# This script is called by RutilT with 2 arguments : the device name, and
# the network ESSID.
#
# WARNING : This script is executed with root privileges, so beware.
#
case $2 in
# RutilT doesn't support static IPs currently, until it does, if ever, you can
# customize this script to do the job, don't forget to set the IP setting to
# "Automatic" in the matching profile.
# Here is an example on how you could set a static IP for networks "foo" and/or
# "bar".  The two ";;" at the end of the line are required.
# The "#" at the beginning of the line means comment, so you definetely don't
# want to put one on yours.
#    'foo') /sbin/ifconfig $1 192.168.1.2;;
#    'bar') /sbin/ifconfig $1 192.168.1.3;;
# Note that setting the address is usually not enough, the gateway, netmask
# and dns server address should typically be set too. Have a look at "ifconfig"
# man page and your distribution documentation.
#
# WARNING : Always put your static settings above this line.
# No known essid, fallback on DHCP  but first kill any previously running
# dhcp client :
    *) if [ -e /sbin/dhclient ]; then
           pkill -f "dhclient $1"
           exec /sbin/dhclient $1
       else if [ -e /sbin/dhcpcd ]; then
           pkill -f "dhcpcd $1"
           exec /sbin/dhcpcd $1
       else
           echo "set_ip.sh : Cannot find a dhcp client."
       fi fi;;
esac
Lo scopo per cui mi sono sentito di scrivere questo post è stato pensato per chi come me, trovandosi alle prime armi, voglia ottenere lo stesso scopo adottando una tecnica non invasiva per la distribuzione slackware e senza alterare la configurazione originale di alcuni file coinvolti nell'assegnazione di IP dinamico.

Se il post risulterà utile non posso non essere felice, se invece ho turbato qualcuno chiedo scusa da ora.

L.S.
Ultima modifica di lostratega il gio 13 mar 2008, 18:04, modificato 2 volte in totale.

Avatar utente
conraid
Staff
Staff
Messaggi: 13631
Iscritto il: gio 14 lug 2005, 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Desktop: kde
Località: Livorno
Contatta:

Re: DHCP e assegnazione IP dinamico [tramite script]

Messaggio da conraid »

lostratega ha scritto: Lo scopo per cui mi sono sentito di scrivere questo post è stato pensato per chi come me, trovandosi alle prime armi, voglia ottenere lo stesso scopo senza adottare nessuna tecnica invasiva per la distribuzione slacky e senza alterare la configurazione originale di alcuni file coinvolti nell'assegnazione di IP dinamico.
La distribuzione si chiama Slackware, Slacky è questa community.
Come vedi quello script non fa altro che
dhcpcd nomeinterfaccia

Se vuoi usare Slackware devi iniziare a prendere dimestichezza con la modifica dei file di configurazione e non pensare che questo metodo sia invasivo.

Comunque ben venga quello script se qualcuno vuole usarlo

Avatar utente
lostratega
Linux 1.x
Linux 1.x
Messaggi: 148
Iscritto il: mer 5 mar 2008, 19:32
Nome Cognome: LoStratega
Slackware: 13.0
Kernel: 2.6.29.2
Desktop: KDE 4.2.4
Località: Salamanca (Spain)

Re: DHCP e assegnazione IP dinamico [tramite script]

Messaggio da lostratega »

Conraid

grazie per la tolleranza dimostrata verso ciò che ho scritto sono perfettamente d'accordo sul fatto che bisogna muoversi con consapevolezza nel sistema
ed è questo il motivo per cui da ubuntu sono passato a slackware [tra l'altro me ne sto innamorando sempre di più].

Se reputate poco istruttiva questa soluzione non ho problemi a condividere la scelta di essere tolta dal forum.

P.s. ho corretto la dicitura slacky/slackware e sopratutto ciò che ho scritto in merito alla "soluzione invasiva".
Ovviamente non mi riferisco alla configurazione manuale del file [tutto ciò che è nativo di slackware non è invasivo!!!!]
ma a ciò che potrebbe essere fatto con l'alternativa proposta, essa risulta non invadente proprio perchè non bisogna installare nulla.

Grazie

L.S.

Avatar utente
conraid
Staff
Staff
Messaggi: 13631
Iscritto il: gio 14 lug 2005, 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Desktop: kde
Località: Livorno
Contatta:

Re: DHCP e assegnazione IP dinamico [tramite script]

Messaggio da conraid »

lostratega ha scritto: Ovviamente non mi riferisco alla configurazione manuale del file [tutto ciò che è nativo di slackware non è invasivo!!!!]
ma a ciò che potrebbe essere fatto con l'alternativa proposta, essa risulta non invadente proprio perchè non bisogna installare nulla.
Ma non c'è problema di lasciarla nel forum, è pur sempre una soluzione ed un tuo pensiero.
Semplicemente lancia il client dhcp per tutte le interfaccie. Puoi fare questo e molto di più con rc.inet1 e relativo file di configurazione rc.inet1.conf
Ma nessuno ti vieta di fare in quel modo e di consigliarlo :-)

Rispondi