Il racconto: il modo in cui lo hai fatto è corretto (come da tuo commento alla domanda).
La lunga storia: su Linux, un "dispositivo" di rete chiamato foo:bar
è un alias di "pippo" utilizzato quando è necessario assegnare più impostazioni di rete all'interfaccia "pippo", ad esempio per far sì che risponda su più sottoreti sullo stesso filo.
Questo è un modo kludgy per farlo, e incoerente per l'avvio. Per IPv6, tutti gli indirizzi assegnati all'interfaccia eth0 sono elencati insieme nella voce eth0. C'è un metodo più moderno per farlo (tramite il ip addr
comando).
Puoi individuare le interfacce alias perché hanno i due punti :
nei loro nomi, la parte alla sinistra dei due punti è un nome di interfaccia esistente e la stanza dell'interfaccia quando lo fai ifconfig
è molto breve. L' HWaddr
dovrebbe anche essere identica a quella dell'interfaccia 'genitore'. Inoltre non saranno elencati in /proc/net/dev
. Se dovessi dire ip addr
, eth0:0
mostrerebbe come il secondo indirizzo dell'interfaccia eth0
. (cerca la riga rientrata che inizia con inet
)
Gli alias e i loro genitori condividono molte impostazioni e campi, poiché condividono il livello fisico. Il kernel non li tratta come interfacce completamente separate. Per uno, il traffico appare sull'interfaccia padre , non sull'alias. Potresti aver notato che l'alias non ha nemmeno contatori di pacchetti / byte!
Se devi annusare traffico, firewall, ecc. Su un'interfaccia alias, devi invece usare il suo genitore. Poiché l'unica differenza che un alias ha rispetto al suo genitore sono le sue impostazioni IPv4, l'unico modo per abbinare il traffico su un alias è usare quelle impostazioni IP. Con iptables
, abbini l'indirizzo IPv4 dell'alias proprio come hai fatto nel commento alla tua risposta.