OpenSSH-ի տեղային փոխանցումը կրում է TCP։ DNS-ը նույնպես կարող է օգտագործել TCP, պայմանով, որ հարցման գործիքը և հեռավոր DNS ծառայությունը օգտագործում են այդ տրանսպորտը։

SSH հոսթից հասանելի DNS սերվերի համար բացեք միայն loopback-ի վրա լսող փոխանցում՝

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

Այնուհետև տեղային մեքենայից ուղարկեք բացահայտ TCP DNS հարցում՝

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 over TCP-ն ավելացնում է երկարության դաշտ և հոսքի շրջանակավորում։ Համակարգի resolver-ի հետ ինտեգրումը պահանջում է համապատասխան DNS փոխանցիչ կամ բացահայտ աջակցվող TCP կարգավորում։

Վերջապես, այս ուղով հասցե ստանալը չի ուղղորդում հաջորդ վեբ կապը SSH-ով։ DNS որոնումը և նպատակակետի տրանսպորտը մնում են առանձին ընտրություններ։

Առնչվող հոդվածներ