Não é possível acessar o servidor no endereço de loopback, somente no endereço privado

2

Estou executando um servidor de aplicativos da Web rails vinculado a 0.0.0.0 na porta 80 da seguinte forma:

sudo rails s --port=80 --bind=0.0.0.0

Eu posso acessá-lo no meu endereço privado http://192.168.0.13/ , normalmente eu posso acessar no endereço de loopback http://127.0.0.1 / http://localhost . No entanto, por algum motivo, o endereço de loopback não está apontando para esse endereço particular. Eu acho que esse problema está relacionado a uma VM configurada na minha máquina como este problema começou a acontecer depois de configurar a VM.

A configuração da VM vaga (que eu não configurei) está executando um segundo servidor de aplicativos da web que eu pode acessar em http://127.0.0.1 . No entanto, mesmo quando eu desligo essa VM vagante, ainda não consigo acessar este servidor de aplicativos da Web rails mencionado acima no endereço de loopback.

O que a VM vaga está fazendo para configurar o loopback para si mesmo?

Como posso configurar o endereço privado para o qual o endereço de loopback aponta?

Aqui está o meu ifconfig se ajudar:

lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
    options=3<RXCSUM,TXCSUM>
    inet6 ::1 prefixlen 128
    inet 127.0.0.1 netmask 0xff000000
    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
    nd6 options=1<PERFORMNUD>
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether 4c:8d:79:d7:a9:e4
    inet6 fe80::4e8d:79ff:fed7:a9e4%en1 prefixlen 64 scopeid 0x4
    inet 192.168.0.13 netmask 0xffffff00 broadcast 192.168.0.255
    nd6 options=1<PERFORMNUD>
    media: autoselect
    status: active
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=10b<RXCSUM,TXCSUM,VLAN_HWTAGGING,AV>
    ether a8:20:66:5a:9b:c7
    nd6 options=1<PERFORMNUD>
    media: autoselect (none)
    status: inactive
fw0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 4078
    lladdr 10:dd:b1:ff:fe:4f:ee:4c
    nd6 options=1<PERFORMNUD>
    media: autoselect <full-duplex>
    status: inactive
en2: flags=963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX> mtu 1500
    options=60<TSO4,TSO6>
    ether d2:00:14:fe:e4:c0
    media: autoselect <full-duplex>
    status: inactive
p2p0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 2304
    ether 0e:8d:79:d7:a9:e4
    media: autoselect
    status: inactive
awdl0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1484
    ether de:fa:c4:c2:1b:f7
    inet6 fe80::dcfa:c4ff:fec2:1bf7%awdl0 prefixlen 64 scopeid 0x9
    nd6 options=1<PERFORMNUD>
    media: autoselect
    status: active
bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=63<RXCSUM,TXCSUM,TSO4,TSO6>
    ether 4e:8d:79:7d:7e:00
    Configuration:
        id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0
        maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200
        root id 0:0:0:0:0:0 priority 0 ifcost 0 port 0
        ipfilter disabled flags 0x2
    member: en2 flags=3<LEARNING,DISCOVER>
            ifmaxaddr 0 port 7 priority 0 path cost 0
    nd6 options=1<PERFORMNUD>
    media: <unknown type>
    status: inactive
vboxnet0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether 0a:00:27:00:00:00
    inet 172.28.128.1 netmask 0xffffff00 broadcast 172.28.128.255

No Vagrantfile , vejo que ele configurou algum encaminhamento de porta:

  system('sudo pfctl -E')
  system('echo "
    rdr pass on lo0 inet proto tcp from any to 127.0.0.1 port 80 -> 127.0.0.1 port 9080
    rdr pass on lo0 inet proto tcp from any to 127.0.0.1 port 443 -> 127.0.0.1 port 9443
    " | sudo pfctl -f - > /dev/null 2>&1; echo "==> Fowarding Ports: 80 -> 9080, 443 -> 9443"')
    
por david_adler 21.05.2016 / 15:40

1 resposta

1

127.0.0.1 é o seu loopback. É sempre local para a máquina em que você está. Criar uma VM significa que ela é uma nova máquina e possui seu próprio 127.0.0.1 interno. Você pode criar 50 VMs e cada uma delas terá seu próprio 127.0.0.1 interno e nenhuma maneira de o computador saber qual delas você deseja. Portanto, você só deve conseguir acessar páginas da Web nas VMs em seus endereços IP roteáveis, não em 127.0.0.1 .

    
por 21.05.2016 / 21:16