Android DNS නිවැරදිව කියවන්න: ජාලය අනුව, resolv.conf තුළ නොවේ
ඔබේ Android යෙදුම එක් එක් ජාලය සඳහා වන resolver හරහා විසඳයි, ඔබ දැන් කියවූ resolv.conf හරහා නොවේ. පළමුව LinkProperties, socket බැඳීම් සහ Private DNS පරීක්ෂා කරන්න.
ඔබ උපාංගයේ shell එකක් ගනී, /etc/resolv.conf කියවයි හෝ පැරණි net.dns1 අගයක් හාරා ගනී, එක් ලිපිනයක් ලැබේ. ඔබ ඉදිරියේ ඇති යෙදුම සම්පූර්ණයෙන්ම වෙනත් දෙයක් හරහා විසඳයි. වත්මන් Android නිකුතුවේ resolver ජාලය අනුව වේ: පද්ධතිය එක් එක් Network සඳහා ප්රතිපත්තියක් තබාගෙන, ඉල්ලීම යැවූ socket එකට එය යොදයි. ගොනුව සහ පැරණි ගුණාංගය ඉතිරි කොටස්, ඒවායින් කිසිවක් ඔබේ විමසුම ඇත්තටම ගිය මාර්ගය විස්තර නොකරයි.
මෙම පරතරය split-tunnel සහ Private DNS යෙදවීමේදී පෙනේ, එහිදී එකම දුරකථනයේ යෙදුම් දෙකකට නීත්යානුකූලව වෙනස් පිළිතුරු දැකිය හැක. මෙම මාර්ගෝපදේශය වැරදි හෝ නොමැති විසඳුමෙන් ආරම්භ වී එය හිමිකම් ඇති වින්යාසය වෙත ආපසු යයි.
resolver ජාලයකට අයත්ය, උපාංගයට නොවේ
Android 9 සහ ඉන් පසු නාම විසඳීම socket එක බැඳී ඇති Network මත පදනම් වූ පද්ධති resolver හරහා යයි. සෑම ජාලයක්ම තමන්ගේම LinkProperties දරයි, එම ගුණාංග එම ජාලයට පමණක් DNS සේවාදායක ලැයිස්තුව, සෙවුම් වසම් සහ Private DNS තත්ත්වය තබාගනී. එම ආකෘතියේ ගොනුවකින් කියවිය හැකි තනි උපාංග-පුළුල් ලැයිස්තුවකට ගැලපෙන කිසිවක් නැත.
VPN මෙම බෙදීම පැහැදිලි කරයි. ටනලය ඉහළ යන විට VPN යෙදුම VPN හිම ජාලයේ ලියාපදිංචි DNS සේවාදායක ලබා දෙයි, එබැවින් එය හරහා මාර්ගගත වන යෙදුම් එම සේවාදායකවල විසඳයි, බැහැර කළ යෙදුම් පහළ ජාලය භාවිත කරයි. එක් උපාංගයක්, පිළිතුරු මාර්ග දෙකක්, පරස්පරයක් නැත.
ස්නැප්ෂොටය බලපෑමට ලක් වූ යෙදුම තුළින් කියවන්න
යෙදුමෙන්ම අසන්න. Context සහ සාමාන්ය android.permission.ACCESS_NETWORK_STATE අවසරය ඇති ක්රමයකට පද්ධති ගුණාංග ස්පර්ශ නොකර ස්නැප්ෂොටය කියවිය හැක:
val cm = getSystemService(ConnectivityManager::class.java) ?: return
val network = cm.activeNetwork
val links = network?.let { cm.getLinkProperties(it) }
val dnsServers = links?.dnsServers
val privateDnsActive = links?.isPrivateDnsActive
val privateDnsName = links?.privateDnsServerNameactiveNetwork යනු ඔබේ ක්රියාවලියේ පෙරනිමි ජාලයයි, උපාංගයේ එකම ජාලය නොවේ, ඇමතුම්කරුට භාවිත කළ හැකි පෙරනිමියක් නොමැති විට null විය හැක. අවහිර කළ පෙරනිමි VPN සාමාන්ය හේතුවයි. isPrivateDnsActive එම ජාලයේ විමසුම් TLS හරහා නම් කළ resolver වෙත යනවාදැයි කියයි, මෙය සරල UDP 53 පරීක්ෂාවෙන් පෙනෙන දේ වෙනස් කරයි. API මතුපිට LinkProperties යටතේ ලේඛනගත කර ඇත, එහි සෑම අගයක්ම වින්යාසයේ ස්නැප්ෂොටයක්, නිශ්චිත විමසුමක් නිශ්චිත සේවාදායකයකට ළඟා වූ බවට සාක්ෂියක් නොවේ.
පෙරනිමි ජාලය වැඩ කරන ජාලය නොවන විට
ස්නැප්ෂොටය පෙරනිමිය සඳහා පමණක් පිළිතුරු දෙයි. යෙදුමට එහි ක්රියාවලිය හෝ එක් socket එකක් වෙනත් ජාලයකට බැඳිය හැක, එවිට විසඳුම එම තේරීම අනුගමනය කරයි, ඔබේ රෝග විනිශ්චය තවමත් පෙරනිමිය වාර්තා කරයි. තමන්ගේම DNS-over-HTTPS resolver ගෙන එන බ්රවුසරය පද්ධති ලැයිස්තුවෙන් කිසිසේත් නොඅසයි, එබැවින් එහි පිළිතුරු සෙසු උපාංගය ගැන කිසිවක් නොකියයි. කාර්ය පැතිකඩ යෙදුම තමන්ගේම ප්රතිපත්තිය සමඟ වෙනම පරිශීලකයෙකු යටතේ ක්රියා කරයි. සේවාදායකයන්ට දොස් පැවරීමට පෙර බැඳීම පරීක්ෂා කරන්න.
VPN ඒකාබද්ධ කිරීම අනෙක් අර්ධයයි. dhcp-option DNS පේළිය OpenVPN පැතිකඩක ලබා ගැනීම සහ එම ලිපිනය Android VPN ජාලයේ ලියාපදිංචි කිරීම වෙනස් පියවර දෙකකි, සේවාදායකයට මාර්ගය නොමැති වීම වැරදි ලිපිනයක් මෙන්ම නිශ්ශබ්දව අසාර්ථක වේ. සංවර්ධන යන්ත්රයකින් adb shell dumpsys connectivity build එක ඉඩ දෙන විට එම සබැඳි ගුණාංග ජාලය අනුව මුද්රණය කරයි, එය කේතයක් නොලියා ලැයිස්තුව තහවුරු කරයි.
වින්යාසය ඔබට අවසර ඇති එක් විසඳුමක් සමඟ සසඳන්න
පෞද්ගලික නාම අවකාශය තුළ විසඳිය යුතු නාමයක් සහ එක් පොදු නාමයක් තෝරා, ප්රතිඵල දෙකම ස්නැප්ෂොටය අසල ලියන්න: ජාලය, වින්යාසගත සේවාදායක, Private DNS තත්ත්වය සහ දෝෂයේ නිශ්චිත පෙළ. නම් කළ සේවාදායකයකට සෘජු විමසුමක් එම සේවාදායකය ඔබට පිළිතුරු දෙන බව ඔප්පු කරයි; සාමාන්ය යෙදුම් විසඳුම එය තෝරා ගත් බව ඔප්පු නොකරයි. හැඹිලියේ ඇති පිළිතුරු නව පරීක්ෂණයක් නොවේ, එබැවින් හැඹිලිය හිස් කරන්න හෝ අද කිසිවෙකු නොඇසූ නාමයක් භාවිත කරන්න.
resolver යම් ප්රවේශ ජාලයක සේවාලාභීන්ට පමණක් සේවය කරන්නේ නම්, VPN පිටවීමෙන් පසු එය දකින දේ ප්රතිඵලය තීරණය කළ හැක, මෙය එය ක්රියාත්මක කරන්නාට ප්රතිපත්ති ප්රශ්නයක් මිස ජාල ක්රියාකරුවන් UDP 53 අවහිර කරන බවට සාක්ෂියක් නොවේ. Private DNS සක්රීයව ඇති තැන අසම්පූර්ණ සත්කාරක නාමයක් නිර්මාණය අනුව ප්රතික්ෂේප විය හැක, එම සේවාදායකයම පොදු නාමවලට සාමාන්ය ලෙස පිළිතුරු දෙයි. ගුණාංග කියවීම කුමන ආකාරය බලපවත්වනවාදැයි කියයි, එබැවින් ඔබ පැකට් පෙරහන් ගැන අනුමාන කිරීම නවත්වයි.
මෙම නොගැලපීම අයත් වන ස්තරය නිවැරදි කරන්න
ගෝලීය තත්ත්වය සංස්කරණය කරනවාට වඩා ඉහළට වැඩ කරන්න. යෙදුම වැරදි ජාලයට බැඳී ඇත්නම් බැඳීම නිවැරදි කරන්න. පැතිකඩ වැරදි DNS විකල්පය ලබා දෙන්නේ නම් පැතිකඩ නිවැරදි කරන්න. කුමන ජාලයේ resolver ට ඔබේ පෞද්ගලික කලාපයට සේවය කළ නොහැකිද එහි Private DNS දැඩි නම්, එය උපාංග කළමනාකරණ තීරණයක්, සෑම තැනකම විශේෂාංගය අක්රීය කිරීමට හේතුවක් නොවේ.
පොදු resolver DHCP කොක්කකට හෝ පද්ධති ගුණාංගයකට තල්ලු කිරීම නිරන්තරයෙන් සිද්ධි ඇති කරන අලුත්වැඩියාවයි: පෞද්ගලික නාම විසඳීම නවතී, වෙනස VPN සැසියට වඩා නොනැසී පවතී, උපාංගයේ ඊළඟ පුද්ගලයාට හිමිකරු නොමැති පැරණි ලිපිනයක් හමු වේ. වෙනස VPN, යෙදුම හෝ මෙම නොගැලපීම අයත් වන කළමනාකරණ ස්තරය තුළ තබා, පසුව ස්නැප්ෂොටය නැවත කියවා සේවාදායක ලැයිස්තුව ඇත්තටම වෙනස් වූ බව තහවුරු කරන්න.
අවසානයේ ඔබට එක් ජාලයක්, resolver ලැයිස්තුවක් සහ Private DNS තත්ත්වයක් සමඟ බැඳුණු එක් යෙදුම් ඉල්ලීමක් අවශ්යයි. මෙම දාමය පෙන්විය හැකි විට, ගොනුවේ ඇති හුරුපුරුදු ලිපිනය කිසිවකට සාක්ෂියක් නොවේ.