Consultar DNS sobre TCP mediante un reenvío local de SSH
Reenvía un porto TCP local sen privilexios a un servidor DNS remoto e solicita explicitamente DNS sobre TCP con dig.
O reenvío local de OpenSSH transporta TCP. DNS tamén pode usar TCP, sempre que a ferramenta de consulta e o servizo DNS remoto empreguen ese transporte.
Para un servidor DNS accesible desde o host SSH, abre un reenvío que escoite só en loopback:
ssh -N -L 127.0.0.1:1053:dns.internal:53 [email protected]
Despois envía unha consulta DNS TCP explícita desde a máquina local:
dig +tcp @127.0.0.1 -p 1053 app.internal A
Substitúe o servidor DNS, o host SSH e o nome consultado polos valores previstos. O lado do servidor SSH debe poder alcanzar dns.internal:53 e a política de reenvío debe permitilo.
O porto local está por riba do rango de portos privilexiados. Unha consulta a un porto local 1053 non require vincular o porto DNS do sistema 53.
Isto non redirixe automaticamente as consultas DNS UDP habituais. Unha tubería de bytes UDP a TCP en bruto non abonda, porque DNS sobre TCP engade un campo de lonxitude e unha trama de fluxo. A integración co resolvedor do sistema require un reenviador DNS axeitado ou unha configuración TCP explicitamente admitida.
Por último, obter un enderezo por esta vía non encamiña a conexión web posterior por SSH. A consulta DNS e o transporte ata o destino seguen sendo decisións separadas.