Pi-hole v6 පෝට් 53 හි DNS විමසුමක් ලබාගෙන, පැමිණි පැකට්ටුවට පිළිතුරු දීමට අවසර තිබේදැයි තීරණය කරයි. WireGuard සත්කාරකයක මෙම දෙවන තීරණය නිසාම සේවාලාභියාට කාල ඉකුත්වීමක් සිදුවන අතර, LAN එකෙන් බලන විට විසඳන්නා සුවපත් ලෙස පෙනේ. පෝට් එක විවෘතය, FTL ක්‍රියාත්මකය, නමුත් 10.90.0.1 වෙතින් කිසිවක් ආපසු නොඑයි. පිළිතුරක් පිටවීමට පෙර කරුණු තුනක් අන්තර්ක්‍රියා කරයි: dns.interface, dns.listeningMode සහ දෙකටම ඉදිරියෙන් ඇති ෆයර්වෝලය.

ශ්‍රවණ සොකට් එක පිළිතුරක් ලැබෙන්නේ කාටද යන්න තීරණය නොකරයි

FTL පෝට් 53 හි UDP සහ TCP ශ්‍රාවකයන් විවෘත කරයි. පෙරනිමි වින්‍යාසයේදී සොකට් එක බොහෝ විට wildcard වේ, එබැවින් ss -lunp | grep :53 VPN සේවාලාභීන්ට සේවය සපයනවාද නැද්ද යන්න නොසලකා 0.0.0.0:53 සහ [::]:53 පෙන්වයි. wildcard සොකට් එක පැකට්ටුව පිළිගනී, පසුව FTL පිළිතුරු දීමට පෙර තම ඉන්ටර්ෆේස් සහ මූලාශ්‍ර නීති යොදයි. එබැවින් "පෝට් එක ශ්‍රවණය කරමින් සිටී" යන්න ටනල් සේවාලාභියෙකු ගැන ඉතා අල්පයක් පමණක් සනාථ කරයි.

ඔබ ක්‍රියාකාරී යැයි සිතන ගොනුව වෙනුවට ධාවනය වන වින්‍යාසය කියවන්න. pihole-FTL --config dns.interface සහ pihole-FTL --config dns.listeningMode සැබෑ අගයන් මුද්‍රණය කරයි, සහ කන්ටේනරයක්, පරිසර විචල්‍යයක් හෝ යෙදවුම් කළමනාකරුවෙකු එම සැකසුමට හිමිකම් කියන විට ඒවා සත්කාරක ගොනුවට වඩා වෙනස් විය හැක. Pi-hole FTL වින්‍යාස සන්දර්භය මාදිලි සහ ඒවායින් කුමක් ඉන්ටර්ෆේස් මත රඳා පවතීද යන්න ලැයිස්තුගත කරයි.

LOCAL අසන්නේ කුමන උපජාලයද, SINGLE අසන්නේ කුමන ඉන්ටර්ෆේස්ද

LOCAL, පෙරනිමි මාදිලිය, මූලාශ්‍ර ලිපිනය සත්කාරකයේ එක් ඉන්ටර්ෆේසයක වින්‍යාස කළ උපජාලයකට අයත් වන විමසුම්වලට පිළිතුරු දෙයි. 10.90.0.1/24 සහිත සරල wg0 මෙම පරීක්ෂණය සමත් වේ, මන්ද 10.90.0.2 හි සේවාලාභියා ටනල් උපජාලය තුළ සිටී. පියර් එකේ අනෙක් පැත්තේ මාර්ගගත සේවාලාභියා, හෝ වෙනත් උපසර්ගයක NAT පිටුපස සැඟවුණු සේවාලාභියා, පැකට්ටුව wg0 වෙත පැමිණියද එය සමත් නොවේ, සහ ලොගයේ කිසිදු විමසුමක් නොපෙනේ.

SINGLE ප්‍රශ්නය වෙනස් කරයි. එය dns.interface හි නම් කරන ලද ඉන්ටර්ෆේසයට පැමිණෙන විමසුම් loopback ඇතුළුව පිළිගනී, සහ මූලාශ්‍ර උපජාලය නොසලකා හරියි. දාම ලෙස හෝ මාර්ගගත VPN ටොපොලොජියක ටික වන මාදිලිය මෙයයි. කී දෙකම එකට සකසන්න, මන්ද නම් කළ ඉන්ටර්ෆේසයක් නොමැති මාදිලියක් සම්පූර්ණ උපදෙසක් නොවේ:

sudo pihole-FTL --config dns.interface "wg0"
sudo pihole-FTL --config dns.listeningMode "SINGLE"

BIND සොකට් එක වෙනස් කරයි, සහ එයට මිලක් ඇත

BIND wildcard සොකට් එක පෙරහන් නොකරයි; එය පෝට් 53 නම් කළ ඉන්ටර්ෆේසයේ පවතින ලිපිනවලට පමණක් බඳියි, එබැවින් කර්නලය වෙනත් තැනකට පැමිණෙන පැකට්ටු ප්‍රතික්ෂේප කරයි. එය SINGLE ට වඩා දැඩිය, එහි සමාන පදයක් නොවේ. මිල පැහැදිලි වන්නේ ඇරඹුමේදීය: FTL ආරම්භ වන විට wg0 ඉහළ නැතිනම්, බැඳීමට ලිපිනයක් නොතිබිය හැක, සහ ඉන්ටර්ෆේසය දිස්වී FTL නැවත ආරම්භ වන තෙක් විසඳන්නා ශ්‍රාවකයකින් තොරව ක්‍රියා කළ හැක.

ආරම්භක අනුපිළිවෙල ඔබ පාලනය කරන විට BIND තෝරන්න, උදාහරණයක් ලෙස WireGuard ඉන්ටර්ෆේසයට පසුව අනුපිළිවෙල කළ systemd ඒකකයක්, සහ FTL දකින පෙර කර්නලය අතරමං වූ පැකට්ටු ඉවතලනු ඇතැයි ඔබට අවශ්‍ය වූ විට. ටනලය එන-යන විට, හෝ FTL ට පසුව ආරම්භ වන මෙවලමක් ඉන්ටර්ෆේසය සාදන විට SINGLE තෝරන්න.

ෆයර්වෝලය දෙවන දොරටුවයි

නිවැරදි FTL මාදිලියක් වුවද සත්කාරක ෆයර්වෝලය wg0 මත පෝට් 53 ඉවතලන්නේ නම් අසාර්ථක වේ. ප්‍රොටොකෝල දෙකටම VPN මූලාශ්‍ර පරාසය අවසර දෙන්න සහ අන්තර්ජාල පැත්ත වසා තබන්න. inet filter වගුවේ පවතින input දාමය සමඟ nftables හි නීති මෙසේ පෙනේ:

sudo nft add rule inet filter input iifname "wg0" ip saddr 10.90.0.0/24 udp dport 53 accept
sudo nft add rule inet filter input iifname "wg0" ip saddr 10.90.0.0/24 tcp dport 53 accept

ටනලය IPv6 ගෙනයන්නේ නම් ගැලපෙන IPv6 නීති එක් කරන්න, සහ ඒවා දාමයේ drop ප්‍රතිපත්තියට පෙර තබන්න. සත්කාරකය ufw හෝ firewalld භාවිතා කරන්නේ නම්, මෙවලම් මිශ්‍ර කරනවා වෙනුවට එම කළමනාකරු තුළම එම ගැලපීම ප්‍රකාශ කරන්න. අන්තර්ජාල රවුටරයෙන් පෝට් 53 ඉදිරියට නොයවන්න; සේවාලාභීන් ටනලය හරහා විසඳන්නාගේ VPN ලිපිනයට ළඟා විය යුතුය.

මාර්ග දෙකක් වෙන්ව පවතී. සේවාලාභීන්ගේ විමසුම් FTL හි අවසන් වේ. FTL හිම ඉහළ ධාරා සෙවීම් සත්කාරකයේ මාර්ගගත වගුව අනුව පිටවේ, එය ටනලය භාවිතා කළ හෝ නොකළ හැක, එබැවින් පිළිතුරු දෙන නමුත් ප්‍රයෝජනවත් කිසිවක් ආපසු නොදෙන විසඳන්නා ඉහළ ධාරා ගැටලුවකි. වෙබ් පරිපාලනය සහ API තමන්ගේ පෝට්වල ශ්‍රවණය කරන අතර තමන්ගේම සීමාවක් අවශ්‍ය වේ.

පිළිතුර සහ ප්‍රතික්ෂේපය තහවුරු කරන්න

VPN සේවාලාභියෙකුගෙන්, ප්‍රොටොකෝල දෙකෙන්ම විසඳන්නාගේ ලිපිනය විමසන්න: dig @10.90.0.1 example.com සහ dig +tcp @10.90.0.1 example.com. පසුව FTL විමසුම වාර්තා කළ බව තහවුරු කිරීමට පරිපාලන ඉන්ටර්ෆේසයේ විමසුම් ලොගය පරීක්ෂා කරන්න. ලොග සටහනක් නොමැතිව සේවාලාභියාගේ කාල ඉකුත්වීම ෆයර්වෝලය හෝ ඉන්ටර්ෆේස් පෙරහන වෙත යොමු කරයි; පිළිතුරක් නොමැති ලොග සටහන ඉහළ ධාරා විසඳුම වෙත යොමු කරයි.

VPN එකෙන් පිටත සත්කාරකයකින් සෘණාත්මක මාර්ගය පරීක්ෂා කරන්න. dig @10.90.0.1 example.com කාල ඉකුත් විය යුතුය, සහ ss -lunp විසඳන්නා මත පෝට් 53 පොදු ලිපිනයකට බැඳී ඇති බව නොපෙන්විය යුතුය. සේවාව එක් වරක් නැවත ආරම්භ කරන්න, පසුව සත්කාරකය නැවත ඇරඹීම කර wg0 නැවත දිස්වූ පසුවත් විසඳන්නා පිළිතුරු දෙන බව තහවුරු කරන්න. ඊළඟ නැවත ඇරඹීම දක්වා පමණක් ක්‍රියා කරන විමසුමක් සම්පූර්ණ කළ වෙනසක් නොවේ.

අදාළ ලිපි