Depois de um pouco de pesquisa, aparentemente você não pode fazer isso.
A subinterface não pode solicitar outro endereço IP porque está usando o mesmo endereço MAC da interface física e, como as solicitações DHCP são pelo endereço MAC, não é possível obter dois IPs para a mesma interface.
Uma resposta do SuperUser sugere os dois métodos a seguir:
Método 1
Crie um script que faça algo assim (com uma subinterface definido no primário):
- A interface principal emite o DHCP e obtém o endereço IP,
- macchanger altera o endereço MAC da interface,
- A subinterface emite o DHCP e obtém o endereço IP,
- Reverter o endereço mac com o macchanger.
- Mate o cliente DHCP para que ele não seja executado automaticamente mais tarde.
Calcule o tempo de concessão do endereço IP que você recebe e agende este script para ser executado novamente antes da expiração da concessão.
Método 2
Para isso, você precisará do
iproute2
instalado. O seguinte comando adiciona uma interface virtual vinculada a uma interface eth0 existente:ip link add link eth0 address 00:11:22:33:44:55 virtual0 type macvlan
Substitua o mac e o nome "virtual0" da interface para o que você quiser gostar. Ligue-o:
ip link set virtual0 up
Em seguida, configure usando dhcpd ou dhclient ou ifconfig conforme necessário. eu tenho testado isso no Debian squeeze - sua distro pode não ter tudo necessário ativado no kernel (particularmente em macvlan).
Fonte: SuperUser: Obtendo dois endereços IP em uma placa de rede, usando DHCP
Outras fontes: