إعادة التوجيه المحلية في OpenSSH تنقل TCP. ويمكن لـ DNS أن يستخدم TCP أيضًا، شرط أن تستخدم أداة الاستعلام وخدمة DNS البعيدة هذا النقل.

بالنسبة إلى خادم DNS يمكن الوصول إليه من مضيف SSH، افتح إعادة توجيه على واجهة العودة فقط:

ssh -N -L 127.0.0.1:1053:dns.internal:53 [email protected]

ثم أرسل استعلام DNS عبر TCP صراحةً من الجهاز المحلي:

dig +tcp @127.0.0.1 -p 1053 app.internal A

استبدل خادم DNS ومضيف SSH والاسم المستعلم عنه بالقيم المقصودة. يجب أن يتمكن جانب خادم SSH من الوصول إلى dns.internal:53، ويجب أن تسمح سياسة إعادة التوجيه بذلك.

المنفذ المحلي أعلى من نطاق المنافذ المميزة. والاستعلام إلى منفذ محلي 1053 لا يتطلب ربط منفذ DNS النظامي 53.

هذا لا يعيد توجيه استعلامات UDP DNS العادية تلقائيًا. وأنبوب بايتات خام من UDP إلى TCP لا يكفي، لأن DNS عبر TCP يضيف حقل طول وتأطيرًا للتدفق. ويتطلب الدمج مع مُحلِّل النظام مُمرِّر DNS مناسبًا أو تكوين TCP مدعومًا صراحةً.

وأخيرًا، الحصول على عنوان عبر هذا المسار لا يوجّه اتصال الويب اللاحق عبر SSH. يبقى بحث DNS ونقل الوجهة خيارين منفصلين.

مقالات ذات صلة