Como @Andriy afirmou, usando apenas IP, isso não é possível.
Quando o computador se conecta a server1.example.com
, ele está realmente resolvendo isso para um endereço IP, por exemplo: 123.123.123.123
.
Quando tiver o endereço IP, ele tentará se conectar à porta relevante no host 123.123.123.123
. Neste ponto, não há nenhum conceito de ' hostname ' ou DNS.
Se você quiser conseguir isso, então você tem duas opções:
- Diferencie os serviços usando endereços IP públicos diferentes.
- Diferencie os serviços usando portas diferentes.
Você já declarou que " não quer que seja específico do protocolo ", mas (por exemplo) se você estivesse usando HTTP (S), então isso seria possível.
Isso só é possível porque o HTTP inclui informações adicionais em seus cabeçalhos, depois de se conectar ao host em 123.123.123.123
, ele diz " Por favor, aja como se eu estivesse falando com server1.example.com
".
É trivial conectar-se a 123.123.123.123
e dizer " Por favor, aja como se eu estivesse falando com someotherhost.example.com
" - mesmo que este host não seja publicamente anunciado. Se esta solicitação é acionada depende da sua configuração.