Linux: Desativa a interface de loopback do kernel

4

Eu sei que é possível derrubar a interface fazendo ifconfig lo down . Mas é possível configurar o kernel que a interface lo simplesmente não estará disponível? Por favor, note que eu não quero remover o código-fonte do kernel ou desabilitar toda a pilha tcp / ip.

Observe que isso é uma questão inteiramente técnica. Eu sei que alguém precisa da interface e muitas coisas ruins acontecerão na minha máquina. Mas eu ainda gostaria de saber se é possível.

    
por lang2 20.12.2012 / 09:55

2 respostas

4

Sim, é possível se:

  • Você recompila o Linux sem suporte de rede. (nenhum)
  • Você edita a origem do kernel.

Apenas removê-lo de uma configuração parece menos trivial do que o esperado. Removê-lo de /usr/src/linux/drivers/net/Makefile (linha 68 no kernel 3.2.29) é um bom começo, mas não é suficiente para uma compilação bem-sucedida. E / usr / src / linux / net / core / dev.c (linhas 6606 até 6614) indicam que o dispositivo de loopback deve existir sempre se a parte da rede estiver selecionada. (Como indicado por este comentário no código):

/* The loopback device is special if any other network devices
 * is present in a network namespace the loopback device must
 * be present. Since we now dynamically allocate and free the
 * loopback device ensure this invariant is maintained by
 * keeping the loopback device as the first device on the
 * list of network devices.  Ensuring the loopback devices
 * is the first device that appears and the last network device
 * that disappears.
*/

Então: sim, é possível. Mas não é totalmente trivial.

    
por 20.12.2012 / 21:41
4

De curso é possível. Linux é open source; com bastante hacking no sistema de compilação e / ou código-fonte, você pode fazer qualquer coisa. Você poderia definitivamente compilar o Linux sem uma pilha TCP / IP; Nesse caso, você não poderia ter nenhuma interface de rede porque o kernel não teria nenhum conceito de "rede".

Isso normalmente não é algo que você pode desabilitar a partir da GUI ou da linha de comando em uma distribuição Linux padrão, como Ubuntu, Debian ou Fedora, porque a interface de loopback está conectada à configuração do kernel que eles fornecem; mas isso não significa que você não pode recompilar um kernel com ele removido.

Além disso, se você não tem nenhuma necessidade particular de fazer isso, e está "apenas imaginando", eu aconselho que você não faça esse tipo de pergunta - a razão é que nós tentamos desencorajar coisas triviais ou "justas". por diversão "perguntas sobre SU. Por favor, faça uma pergunta apenas se você tiver um problema real.

    
por 20.12.2012 / 14:37