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.