Como adicionar uma interface de loopback?

24

Eu quero adicionar mais duas interfaces de loopback.

Eu usei o seguinte comando:

ifconfig lo: 127.0.0.2 netmask 255.0.0.0 up

e digite ifconfig, eu posso ver o endereço de loopback foi adicionado.

Mas se eu quiser adicionar mais uma interface ... (por exemplo, 127.0.0.3 ), a interface anterior ( 127.0.0.2 ) foi substituída.

Além disso, quando olho para dentro, /etc/network/interfacesnão vejo entrada.

Como posso adicionar várias interfaces de loopback permanentemente?

Leviatã
fonte

Respostas:

30

Depende do que você deseja loou lo:qual é um alias de interface.

ifconfig lo:0 127.0.0.2 netmask 255.0.0.0 up
ifconfig lo:1 127.0.0.3 netmask 255.0.0.0 up
ifconfig lo:2 127.0.0.4 netmask 255.0.0.0 up

trabalho. Se você quiser ter mais IPs em louso

route add -host 127.0.0.3 dev lo
route add -host 127.0.0.4 dev lo
route add -host 127.0.0.5 dev lo

funciona também Se você deseja removê-lo, use:

route del -host 127.0.0.3
route del -host 127.0.0.4
route del -host 127.0.0.5

Consulte também HOWTO de rede Linux com alias de IP


fonte
Trabalho. Obrigado! Mas qual é a diferença entre loe lo:e como remover uma interface de lo:?
Leviathan
1
nunca vi lo:antes. Remova comifconfig lo: down
Qual é a diferença entre ifconfig lo: e route add -host ? Eles estão fazendo a mesma coisa?
hengxin 30/07
1
lo: <foo> é uma nova interface que usa lo como base, é chamada de alias e você pode operá-lo como uma interface normal: configure, desative, etc. Cria uma separação entre apenas adicionar mais ips a uma interface ou criando uma nova interface. É útil quando você não quer ações aplicadas em um ip ser feito também para o resto dos ips em uma interface
de Bruno Pereira
A rota usada add -host [dest] dev lo, e causou algum comportamento realmente inesperado. Ele não funciona por si só, sem criar o alias da interface, a rota add não funciona - não tem certeza do que faz. Então você encaminha os pacotes para o gateway padrão ou o que acontece? Obtenha tempos limite de ping com adição de rota. Parece que pode ser perigoso.
John Doe
7

Se você continuar usando "ifconfig lo ...", não estará criando uma nova interface, substituindo a anterior. Você pode tentar editar seu arquivo de interfaces:

sudo vim /etc/network/interfaces

O meu fica assim:

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

Portanto, você pode tentar modificá-lo para criar novas interfaces:

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
auto lo2
iface lo2 inet loopback
auto lo3

Em seguida, reinicie a rede ou todo o sistema e tente interagir com as novas interfaces com "sudo ifconfig lo2 / lo3 etc ..."

animaletdesequia
fonte
Parece ótimo obrigado! Gostaria de aprovar isso, mas tenho muito menos reputação.
Leviathan
Quais são os ips para o novo lo2 e lo3 criados? By the way, o que os números ( interfaces(5), ifup(8)e ifdown(8)) significa? Obrigado.
Hengxin 30/07/2018
Esses números são referências às páginas de manual, mas não sabem exatamente como eles funcionam. As linhas são comentadas de qualquer maneira. Sobre o IP, você precisará configurá-los com ifconfig ou com o endereço 127.0.0.2 etc em cada interface.
precisa saber é o seguinte
Se você está curioso sobre o significado dos números, corra man man; os números indicam em que seção do manual cada página de manual está inserida. A seção 5 é para formatos e convenções de arquivos, por exemplo, e a seção 8 é para comandos de administração do sistema (que geralmente são esperados para serem executados pela raiz).
Parthian Shot
4
Eu não acho que isso realmente funcione. Você só pode ter um dispositivo "lo" por namespace, de acordo com driver / net / loopback.c. O dispositivo "dummy" podem fazer tudo o que você precisa, "sudo IP Link add tipo de nome loop1 fictício"
mcr
3

Para adicionar várias interfaces de loopback permanentemente, é necessário fazer uma verificação adicional do driver fictício.

O driver fictício é usado para criar vários dispositivos de auto-retorno em vez de
criar vários aliases para um dispositivo, com um anexo de IP diferente.

Essas linhas adicionam outro loopback chamado loop1, loop2, loop3:

sudo ip link add name loop1 type dummy
sudo ip link add name loop2 type dummy
sudo ip link add name loop3 type dummy

Por favor, verifique se o dummymódulo do kernel está carregado antes de executar o comando acima:

sudo lsmod | grep dummy
Adam Ł.
fonte
Olá e bem-vindo ao Ask Ubuntu! Você pode editar sua resposta para incluir mais informações sobre como esse comando resolverá o problema do OP? Consulte Como responder para obter dicas adicionais.
Kaz Wolfe
isso adiciona uma interface dummy que funciona de forma semelhante, mas carece de bandeiras da lointerface tem
sjas
Kaz Wolfe - editar - resolver. Por enquanto, ter um dispositivo independente é a boa solução.
Adam Ł.