Não é possível ligar a 127.0.0.1?

0

Estou tendo dificuldades com um sistema que estava funcionando ontem. Eu não mudei muito - se alguma coisa desde então. No entanto, agora, sempre que tento iniciar algo que usa 127.0.0.1 como seu endereço IP, recebo erros. Por exemplo:

user@server:~# tcpserver 127.0.0.1 8080 echo
tcpserver: fatal: unable to bind: address not available

E um aplicativo java (o que realmente estou tentando iniciar) gera esse erro:

java.net.BindException: Cannot assign requested address (Bind failed)
    at java.net.PlainSocketImpl.socketBind(Native Method)
    at 
java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387)
    at java.net.ServerSocket.bind(ServerSocket.java:375)
    at java.net.ServerSocket.<init>(ServerSocket.java:237)

a mesma chamada tcpserver funciona se eu usar 0.0.0.0 ou o endereço IP atribuído a eth0, mas não ao especificar 127.0.0.1.

Eu tenho cavado todos os logs e não vejo nada que salte em mim. A saída ifconfig -a está abaixo, caso isso seja útil. Eu tentei ifdown lo; ifup lo e mesmo ifup lo --force - nada disso parece fazer qualquer diferença. Eu também reiniciei o servidor algumas vezes sem sorte. Eu também tentei rm -rf /var/run/network/* seguido por outra reinicialização (por link ), mas também não tive sorte. netstat -ano não mostra nada escutando na porta 8080 e nada escutando no 127.0.0.1.

user@server:~# ifconfig -a
eth0  Link encap:Ethernet  HWaddr <redacted>
      inet addr:10.252.2.169  Bcast:10.252.2.255  Mask:255.255.255.0
      inet6 addr: <redacted>/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:9001  Metric:1
      RX packets:18970 errors:0 dropped:0 overruns:0 frame:0
      TX packets:17158 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000
      RX bytes:4514198 (4.5 MB)  TX bytes:4194402 (4.1 MB)

lo    Link encap:Local Loopback
      LOOPBACK  MTU:65536  Metric:1
      RX packets:0 errors:0 dropped:0 overruns:0 frame:0
      TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0
      RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

/ 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

# Source interfaces
# Please check /etc/network/interfaces.d before changing this file
# as interfaces may have been defined in /etc/network/interfaces.d
# NOTE: the primary ethernet device is defined in
# /etc/network/interfaces.d/eth0
# See LP: #1262951
source /etc/network/interfaces.d/*.cfg

Eu comparei o ifconfig acima a um sistema em funcionamento e parece que a causa raiz desse erro pode ser que o adaptador de loopback não parece ter 127.0.0.1 atribuído. Então a questão se torna - como isso é possível? e como faço para corrigir isso?

    
por davidpricedev 12.05.2017 / 15:49

1 resposta

0

Há rumores de que esse é um problema conhecido com o AWS AMI do Ubuntu 14.04 (~ maio de 2017). A correção é reiniciar até que você tenha sorte ou atribuir manualmente o endereço IP por meio de algo como: ifup lo; ip addr add 127.0.0.1/8 dev lo quando isso acontecer.

    
por davidpricedev 12.05.2017 / 15:49