Poiché una risposta DHCP si basa sull'indirizzo MAC dell'interfaccia richiedente, con un'unica interfaccia fisica, la risposta è "non puoi". L'unico modo per farlo sarebbe con uno script.
Forse qualcosa di simile (con una sottointerfaccia definita sulla primaria):
- L'interfaccia primaria emette DHCP e ottiene l'indirizzo IP
- macchanger cambia l'indirizzo MAC dell'interfaccia
- L'interfaccia secondaria emette DHCP e ottiene l'indirizzo IP
- Ripristina l'indirizzo mac con macchanger
Uccidi il client dhcp, in modo che non venga eseguito automaticamente in seguito. Calcola il tempo di lease dell'indirizzo IP che ti è stato fornito e pianifica l'esecuzione di questo script prima della scadenza del lease.
Aggiorna
Per questo avrai bisogno di iproute2 installato. Il comando seguente aggiunge un'interfaccia virtuale associata a un'interfaccia eth0 esistente:
ip link add link eth0 address 00:11:22:33:44:55 virtual0 type macvlan
Sostituisci il mac e il nome "virtual0" dell'interfaccia con quello che preferisci. Attivalo:
ip link set virtual0 up
Quindi configurare utilizzando dhcpd o dhclient o ifconfig secondo necessità. L'ho testato su Debian squeeze:la tua distribuzione potrebbe non avere tutto il necessario abilitato nel kernel (macvlan in particolare).
Come suggerito da @JesseChisholm, è molto più semplice chiedere la cosa giusta al server DHCP invece di effettuare configurazioni di rete complesse.
Per OpenWRT potrei semplicemente eseguire:
# udhcpc -i eth0:1 -x 0x3d:0100BEEFC0FFEE
Il che ha portato ad avere due indirizzi IP dallo stesso server DHCP.
Lo 0x36 è l'opzione 61 che è l'opzione ID client. Dopo :c'è un'opzione byte esadecimale. Questo proveniva dall'opzione help di udhcpc:
# udhcp --help
BusyBox v1.22.1 (2014-10-08 16:34:50 HKT) multi-call binary.
Usage: udhcpc [-fbqRB] [-t N] [-T SEC] [-A SEC/-n]
[-i IFACE] [-s PROG] [-p PIDFILE]
[-oC] [-r IP] [-V VENDOR] [-F NAME] [-x OPT:VAL]... [-O OPT]...
...
-x OPT:VAL Include option OPT in sent packets (cumulative)
Examples of string, numeric, and hex byte opts:
-x hostname:bbox - option 12
-x lease:3600 - option 51 (lease time)
-x 0x3d:0100BEEFC0FFEE - option 61 (client id)