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?

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


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 ..."


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

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 Ł.
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.