HTTPD ouvindo em IPv6, de acordo com netstat, mas alcançável em IPv4

5

Usando o Openstack, eu tenho um GUI da Web (horizonte) hospedado no meu servidor (HTTPS).

Quando faço um netstat -lt | grep https , tenho:

tcp6       0      0 [::]:https              [::]:*                  LISTEN

Com lsof -i :443 , tenho:

COMMAND   PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
httpd    5250   root    6u  IPv6  27390      0t0  TCP *:https (LISTEN)
httpd   17675 apache    6u  IPv6  27390      0t0  TCP *:https (LISTEN)
httpd   17676 apache    6u  IPv6  27390      0t0  TCP *:https (LISTEN)
httpd   17677 apache    6u  IPv6  27390      0t0  TCP *:https (LISTEN)
httpd   17678 apache    6u  IPv6  27390      0t0  TCP *:https (LISTEN)
httpd   17679 apache    6u  IPv6  27390      0t0  TCP *:https (LISTEN)
httpd   17680 apache    6u  IPv6  27390      0t0  TCP *:https (LISTEN)
httpd   17681 apache    6u  IPv6  27390      0t0  TCP *:https (LISTEN)
httpd   17682 apache    6u  IPv6  27390      0t0  TCP *:https (LISTEN)
httpd   27444 apache    6u  IPv6  27390      0t0  TCP *:https (LISTEN)

No entanto, o servidor pode ser acessado no IPv4. Está tudo bem para mim, mas eu me pergunto por que não há uma entrada com netstat assim:

tcp       0      0 0.0.0.0:https              0.0.0.0:*                  LISTEN
    
por Antonin M. 12.02.2016 / 11:00

1 resposta

11

Acredito que no Linux, a ligação a [::] (IPv6) resulta no recebimento de tráfego IPv6 e IPv4 (por padrão). Acredito que estes sejam referidos como endereços IPv6 mapeados para IPv4 . netstat simplesmente mostra apenas a entrada IPv6, porque tecnicamente há apenas uma única ligação, que suporta tanto o IPv4 quanto o IPv6.

Há um pouco de informação no site do Apache .

É possível que o software não use endereços IPv6 mapeados para IPv4 e vincule-os a 0.0.0.0 e [::] separadamente e, portanto, apareça duas vezes em netstat , mas é uma escolha de design por parte dos desenvolvedores.

    
por 12.02.2016 / 12:17