Dispositivo de auto-retorno não configurado na inicialização

2

Meu conhecimento de interfaces de rede no linux é limitado na melhor das hipóteses, então eu esperava que alguém pudesse me ajudar a descobrir a melhor solução para um problema que eu causei inadvertidamente.

Após a inicialização, o dispositivo de loopback na minha estação de trabalho não parece existir. Coisas que requerem o endereço de loopback (como executar suítes de testes JUnit no Eclipse) não funcionam corretamente. No entanto, costumava ficar bem até recentemente, não muito tempo depois de eu ter ficado mexendo com o iptables para encaminhar a porta 80 para a porta 8080, então é provavelmente algo que fiz, mas não tenho ideia de como consertar isso, e até agora, todas as Pesquisas no Google não apresentaram nenhum indicador (provavelmente não sei os termos de pesquisa corretos ...)

Em primeiro lugar, o conteúdo de /etc/network/interfaces :

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
pre-up iptables-restore /etc/iptables.conf
post-down /etc/iptables-flush-all

Agora, depois de inicializar minha máquina:

$ sudo ifconfig
eth0      Link encap:Ethernet  HWaddr 00:24:e8:25:90:5d  
          inet addr:10.33.1.106  Bcast:10.33.1.255  Mask:255.255.255.0
          inet6 addr: fe80::224:e8ff:fe25:905d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:500239 errors:0 dropped:0 overruns:0 frame:0
          TX packets:334565 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:617321176 (588.7 MiB)  TX bytes:36019254 (34.3 MiB)
          Interrupt:26 Base address:0x8000 

Se eu executar ifconfig lo 127.0.0.1 , tudo estará bem e a saída de ifconfig será alterada para:

$ sudo ifconfig
eth0      Link encap:Ethernet  HWaddr 00:24:e8:25:90:5d  
          inet addr:10.33.1.106  Bcast:10.33.1.255  Mask:255.255.255.0
          inet6 addr: fe80::224:e8ff:fe25:905d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:606221 errors:0 dropped:0 overruns:0 frame:0
          TX packets:407173 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:767892736 (732.3 MiB)  TX bytes:42051623 (40.1 MiB)
          Interrupt:26 Base address:0x8000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:65 errors:0 dropped:0 overruns:0 frame:0
          TX packets:65 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:35668 (34.8 KiB)  TX bytes:35668 (34.8 KiB)

Então, alguém pode me ajudar a descobrir o que eu fiz para quebrar meu endereço de loopback?

Editar 0 : conteúdo de /etc/iptables.conf :

chris@PC:~$ sudo cat /etc/iptables.conf 
# Generated by iptables-save v1.4.8 on Thu Nov 10 17:01:44 2011
*nat
:PREROUTING ACCEPT [2:440]
:POSTROUTING ACCEPT [2:102]
:OUTPUT ACCEPT [1:58]
-A PREROUTING -d 127.0.0.1/32 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080 
-A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j DNAT --to-destination :8080 
-A OUTPUT -d 127.0.0.1/32 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080 
COMMIT
# Completed on Thu Nov 10 17:01:44 2011
# Generated by iptables-save v1.4.8 on Thu Nov 10 17:01:44 2011
*mangle
:PREROUTING ACCEPT [4787:2521834]
:INPUT ACCEPT [4544:2507689]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [4190:913164]
:POSTROUTING ACCEPT [4117:908160]
COMMIT
# Completed on Thu Nov 10 17:01:44 2011
# Generated by iptables-save v1.4.8 on Thu Nov 10 17:01:44 2011
*filter
:INPUT ACCEPT [2699:1514101]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [2525:612477]
COMMIT
# Completed on Thu Nov 10 17:01:44 2011

chris @ PC: ~ $ sudo iptables -L -t filter

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

chris @ PC: ~ $ sudo iptables -L -t mangle

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         

chris @ PC: ~ $ sudo iptables -L -t nat

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination   

Editar 1 : Comentar as linhas de pré-up e post-down de eth0 no meu /etc/network/interfaces parece eliminar o problema.

Meu endereço de loopback foi configurado corretamente durante a inicialização depois de alterar /etc/network/interfaces para isso:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
#pre-up iptables-restore /etc/iptables.conf
#post-down /etc/iptables-flush-all

Estas duas linhas destinam-se a carregar e descarregar as regras do iptables quando a interface é ativada e desativada. Eu li que esta é uma maneira melhor de configurar o firewall no Debian do que carregar todas as regras no momento da inicialização.

O conteúdo de /etc/iptables-flush-all é:

chris @ PC: ~ $ sudo cat /etc/iptables-flush-all

#!/bin/sh

iptables --flush
iptables -t nat --flush
iptables -t mangle --flush
iptables -t filter --flush
    
por chrisbunney 21.11.2011 / 17:32

3 respostas

0

Funciona sem o firewall ser carregado?

BTW, "ifconfig" está obsoleto; É melhor usar "ip" para tudo, incluindo diagnósticos. Não que eu ache que isso esteja relacionado ao seu problema.

    
por 22.11.2011 / 23:09
1

No meu caso, era questão de configurar corretamente o / etc / hosts.

Pegue seu hostname com o comando hostname e configure o / etc / hosts desta forma:

127.0.0.1       localhost
127.0.1.1       HOSTNAME
    
por 03.09.2013 / 13:43
0

No meu caso, foi link ... Eu tenho o iptables-restore no pré-up e ele incluiu -A INPUT -i! lo -d 127.0.0.0/8 -j reject que agora é obsoleto sintaxe ...

Então, se você tem uma linha como

pre-up iptables-restore /etc/iptables.up.rules

em / etc / network / interfaces, verifique se as regras estão corretas.

No caso específico do erro 739251, substitua

-A INPUT -i ! lo -d 127.0.0.0/8 -j reject

com

-A INPUT ! -i lo -d 127.0.0.0/8 -j reject

    
por 09.02.2016 / 20:58