Como o servidor web distingue entre diferentes nomes DNS?

1

Eu quero saber como um servidor da Web pode distinguir entre solicitações de nomes DNS diferentes no mesmo servidor (mesmo IP)?

por exemplo, na minha universidade existem dois sites:

fea.kau.edu.sa
engineering.kau.edu.sa

e quando uso nslookup no Windows, recebi o mesmo endereço IP para os dois nomes de domínio. Você pode explicar por favor?

    
por Eng.Fouad 10.01.2012 / 06:15

3 respostas

8

O HTTP 1.1 requer que todos os sistemas cliente enviem um cabeçalho, Host , que indica ao servidor para qual nome do host eles estão enviando o pedido.

Isso permite que o servidor leia esse cabeçalho e responda com o conteúdo para o site apropriado.

Sem esse recurso, um endereço IP diferente seria necessário para cada site diferente; teríamos ficado sem espaço IPv4 ainda mais cedo se não tivéssemos isso em vigor.

    
por 10.01.2012 / 06:22
6

Envie seu rastreador de pacotes favorito (algo como wireshark ) e veja o que realmente acontece quando você se conecta.

Um pedido muito simples pode ter esta aparência:

GET / HTTP/1.1
Host: www.example.com
​

(note que a linha vazia no final, se você quiser recriar isso sozinho usando, digamos, telnet. Você pode ver muitas dessas coisas também na wikipedia )

A parte Host: da solicitação informa ao servidor da web qual site acessar.

Há muitas coisas mostradas nesses cabeçalhos, então você pode querer conhecê-las com um plug-in do navegador como o Firebug

    
por 10.01.2012 / 06:22
2

Simples.

Desde um longo tempo, cada solicitação HTTP .... ... INCLUI O DOMÍNIO.

Basicamente, o PAYLOAD (não tcp, a estrutura de solicitação http) informa ao servidor da Web para qual é o domínio.

link

tem os campos transmitidos pelo navegador. Existe um "HOSTNAME".

A maioria dos outros protocolos - não se importa.

    
por 10.01.2012 / 06:23