VPN કિલ સ્વિચ પોર્ટ 53 બ્લોક કરે ત્યારે DNS ઉકેલાતું નથી
કિલ સ્વિચ DNS ને ઇરાદાપૂર્વક બ્લોક કરી શકે છે. ફક્ત ટનલની અંદરના ઉકેલને સ્થાનિક રિઝોલ્વર અપવાદ સાથે સરખાવો, પછી નક્કી કરો કે કયો સ્તર ખરેખર નિષ્ફળ ગયો.
જ્યારે કિલ સ્વિચ ટનલને પાડી નાખે છે, ત્યારે તે DNS નો માર્ગ પણ સાથે લઈ જાય છે, અને પાછળ રહેલું રિઝોલ્વર ભાગ્યે જ તમે ધારો છો તે હોય છે. બે ડિઝાઇન તે ક્ષણને ખૂબ જ અલગ રીતે સંભાળે છે: ટનલની અંદર ન હોય તેવા દરેક DNS પેકેટને બ્લોક કરવું, અથવાએક રિઝોલ્વરને અપવાદ તરીકે ઊભું રાખવું. બંને વાજબી છે. બ્રાઉઝર ટૅબ પરથી લક્ષણો લગભગ સરખા દેખાય છે, તેથી પહેલું કામ એ શોધવાનું છે કે તમે ખરેખર કઈ ડિઝાઇન લાગુ કરી છે.
હું એ ભેદ મારી સામે રાખું છું, કારણ કે સુધારો દરેક કિસ્સામાં વિરુદ્ધ છે. એક ડિઝાઇનને વિશાળ અપવાદ જોઈએ, બીજીને સાંકડો. અનુમાન કરવાથી તમને ક્યાં તો ગોપનીયતા ગુમાવવી પડે અથવા બપોર બગડે.
એક જ ભંગાણ માટે બે DNS ડિઝાઇન
ડિઝાઇન A રિઝોલ્વરને ટનલ પાછળની બીજી એક સેવા તરીકે ગણે છે. ફાયરવોલ નિયમો UDP અને TCP 53 ને ફક્ત ટનલ ઇન્ટરફેસ પર મંજૂરી આપે છે, અને ક્લાયન્ટને આપવામાં આવતું સરનામું ટનલની અંદરનું રિઝોલ્વર છે. ટનલ પડે ત્યારે શોધ બંધ થાય, અને એ જ ઇચ્છિત પરિણામ છે, કોઈ ખામી નહીં.
ડિઝાઇન B સ્થાનિક નેટવર્ક પર રિઝોલ્વર પહોંચમાં રાખે છે, સામાન્ય રીતે 192.168.1.1 પરનું રાઉટર અથવા 127.0.0.53 પર ઓપરેટિંગ સિસ્ટમનું સ્ટબ, એવી દલીલ સાથે કે નામ-ઉકેલ ટનલ સાથે મરવો ન જોઈએ. ઘરના LAN પર આ અનુકૂળ છે, જ્યાં રાઉટર આખા ઘર માટે ઉકેલે છે. હોટેલ કે એરપોર્ટના Wi-Fi પર એ જ અપવાદ બીજા કોઈના સર્વર તરફ ઇશારો કરે છે, અને તમે ટાઇપ કરો તે દરેક નામ જાહેર થઈ જાય છે, છતાં તમનો વેબ ટ્રાફિક બ્લોક રહે છે.
સીમા એ છે કે રિઝોલ્વર કોનું છે. જો તમે સ્થાનિક પર ભરોસો રાખો, તો અપવાદ નાનું અને પ્રામાણિક છિદ્ર છે. નહીં તો ફક્ત-ટનલ ડિઝાઇન જ ટકે છે, અને કિંમત એ છે કે પડેલી ટનલ બધા નામ સાથે લઈ જાય છે.
VPN ક્લાયન્ટની પોતાની શોધ હજુ કેમ કામ કરે છે
ટનલ અસ્તિત્વમાં આવે તે પહેલાં ક્લાયન્ટે ગેટવેનું હોસ્ટનામ ઉકેલવું પડે, તેથી કડક બ્લોક ક્લાયન્ટના બૂટસ્ટ્રેપ માર્ગને આવરી ન લેવો જોઈએ. મોટાભાગના ક્લાયન્ટ ક્યાં તો એન્ડપોઇન્ટ સરનામું કેશ કરે છે અથવા તે એક જ હોસ્ટ માટે દસ્તાવેજીકૃત બૂટસ્ટ્રેપ અપવાદ આપે છે. જો તમારો નિયમ-સમૂહ એ શોધને બ્લોક કરે, તો ટનલ ક્યારેય પાછી આવતી નથી અને લોગ એવો ક્લાયન્ટ દર્શાવે છે જે પોતાના સર્વર સુધી પહોંચી શકતો નથી; આ DNS ની નહીં, નીતિની ખામી છે.
વિભાજિત DNS એ બીજું સ્થાન છે જ્યાં આ દેખાય છે. ક્લાયન્ટ આંતરિક ઝોનને ખાનગી રિઝોલ્વર પર ધકેલે છે અને બાકીનું બધું સિસ્ટમ રિઝોલ્વર પાસે રાખે છે. પડ્યા પછી જાહેર નામો કદાચ હજુ ઉકેલાય, જ્યારે આંતરિક નામો સમય પૂરો થવાથી નિષ્ફળ જાય, કારણ કે ખાનગી ઝોન પાસે હવે કોઈ માર્ગ નથી. વપરાશકર્તા માટે આ "VPN એ ઇન્ટરનેટ તોડી નાખ્યું" છે; રિઝોલ્વર લોગ માટે આ એવી પૃચ્છા છે જે ક્યારેય પહોંચી નહીં.
systemd-resolved હેઠળ તમે વિભાજન સીધું જોઈ શકો છો.resolvectl statusદરેક લિંકના DNS સર્વર અને રૂટિંગ ડોમેન યાદી કરે છે, અને ટનલ નીચે ગયા પછી આંતરિક ડોમેન એવી લિંક પરના સર્વર તરફ ઇશારો કરતું રહે છે જે હવે અસ્તિત્વમાં નથી. 127.0.0.53 પરનું સ્ટબ પૃચ્છા હજુ સ્વીકારે છે, પછી એવા અપસ્ટ્રીમની રાહ જુએ છે જે જવાબ આપશે નહીં, અને તેથી જ નિષ્ફળતા તરત પાછી ફરવાને બદલે સેકંડ લે છે.
એન્ક્રિપ્ટેડ DNS પેકેટ ફિલ્ટરને ટાળતું નથી
DNS over HTTPS અને DNS over TLS 443 અને 853 પર મુસાફરી કરે છે, તેથી પોર્ટ 53 બ્લોક કરતો નિયમ તેમના વિશે કંઈ કહેતો નથી. પોર્ટ પ્રમાણે "DNS" બ્લોક કરવું એ પોર્ટ વિશેની નીતિ છે, નામ-ઉકેલ વિશેની નહીં. જો તમારો કિલ સ્વિચ ટનલની બહારનો બધો ટ્રાફિક બ્લોક કરે, તો DoH આકસ્મિક રીતે આવરી લેવાય છે. જો તમે કેપ્ટિવ પોર્ટલ કે જાહેર રિઝોલ્વર માટે છૂટ કરી હોય, તો નહીં.
ક્લાયન્ટ-બાજુના નિયંત્રણો સસ્તું લિવર છે. Firefox પોતાનું DoH રિઝોલ્વર છોડી દે છે જ્યારે કેનરી નામuse-application-dns.netઉકેલાતું નથી, અને તેથી જ મેનેજ્ડ નેટવર્ક એ ડોમેનને NXDOMAIN તરીકે પ્રકાશિત કરે છે; એન્ટરપ્રાઇઝ નીતિ તેને બંધ સ્થિતિમાં પિન પણ કરી શકે છે. Android Private DNS અને Chrome ના સુરક્ષિત DNS પાસે પોતાના સ્વિચ અને પોતાના ડિફોલ્ટ છે. તેમને બંધ કરવા એ રિઝોલ્વર સરનામાંઓ પાછળ દોડવા કરતાં વધુ ભરોસાપાત્ર છે, કારણ કે સરનામાંની યાદી બદલાય છે અને તમારો નિયમ-સમૂહ બદલાતો નથી.
આનું એક સંસ્કરણ છે જે લીક સાથે બિલકુલ સંબંધિત નથી. પિન કરેલા રિઝોલ્વરવાળી એપ્લિકેશનને ત્યાં પહોંચવા માટે હજુ નેટવર્ક માર્ગ જોઈએ. એન્ક્રિપ્શન બદલે છે કે કોણ પૃચ્છા વાંચી શકે, એ નહીં કે પેકેટ મશીન છોડી શકે છે કે નહીં, તેથી આખા ઉપકરણનું બ્લોક સેટિંગને અડ્યા વિના તેને હરાવે છે.
લક્ષણને સ્તર સાથે મેળવો
મોટાભાગના રિપોર્ટ તમારા સુધી એક વાક્ય તરીકે આવે છે, અને એ વાક્ય સામાન્ય રીતે સ્તરનું નામ પહેલેથી જ કહી દે છે. નીચેનું કોષ્ટક તે છે જે હું કોઈ નિયમને અડવા પહેલાં થઈ જાઉં છું; મુદ્દો એ નક્કી કરવાનો છે કે પૃચ્છા બ્લોક થઈ, ખોટી દિશામાં ગઈ, કે મોકલાઈ જ નહીં.
| Symptom | Likely layer | First check |
|---|---|---|
| Every name fails at once, instantly | Resolver answering with a refusal | Query the resolver by address, not by name |
| Lookups hang for seconds, then time out | Packets dropped with no response | Watch port 53 on the physical link |
| Public names resolve, internal ones do not | Split-DNS routing domain | Per-link DNS servers on the tunnel |
| Names resolve, the page still fails | Not DNS: routing or MTU | Connect to the IP directly |
| Only one application fails | Pinned resolver or cached answer | Check that app's DNS setting |
પહેલી બે હરોળ એ છે જેને લોકો ખોટું નિદાન કરે છે. શાંત પડવું અને નકાર બંને બ્રાઉઝરમાં "DNS તૂટેલું છે" જેવા દેખાય છે, પણ તેમાંથી ફક્ત એક જ અર્થ એ છે કે તમારો કિલ સ્વિચ પોતાનું કામ કરે છે. નકાર એટલે કંઈકે જવાબ આપ્યો, તેથી બ્લોક તમે ધારો છો ત્યાં નથી.
રિઝોલ્વર નીતિ પુનઃસ્થાપિત કરો, પછી સાબિત કરો
ડિઝાઇન સુધારો, લક્ષણ નહીં. ફક્ત-ટનલ ઉકેલ માટે, ટનલ ઇન્ટરફેસ પર 53 ની મંજૂરી આપો, ટનલ રૂપરેખા સાથે આંતરિક રિઝોલ્વર ધકેલો, અને ભૌતિક લિંકને કોઈ DNS છૂટ વિના છોડો. wg-quick માં રિઝોલ્વરને ઇન્ટરફેસ રૂપરેખામાં લખતી લાઇનDNS =છે, તેથી જે ટનલ તેને છોડી દે છે તે જૂનું રિઝોલ્વર જ્યાં છે ત્યાં રાખે છે અને દરેક પૃચ્છા ખોટા માર્ગે જાય છે.wg-quick માર્ગદર્શિકાદરેક પ્લેટફોર્મ માટે એ વર્તનનું દસ્તાવેજીકરણ કરે છે.
પછી આ ક્રમમાં ચકાસો. Linux પરresolvectl statusસક્રિય લિંક દર્શાવે છે,dig +short example.comજાહેર નામ ચકાસે છે,dig @10.8.0.1 internal.example.comખાનગી નામ ચકાસે છે, અનેsudo tcpdump -ni any port 53બંને ચલાવતી વખતે પેકેટ કયો ઇન્ટરફેસ વાપરે છે તે દર્શાવે છે. Windows પરGet-DnsClientServerAddress -AddressFamily IPv4અનેResolve-DnsName example.comએ જ બે હકીકતો આપે છે: કોણ રૂપરેખાંકિત છે, અને કોણ જવાબ આપે છે.
નકારાત્મક પરીક્ષણ સાથે સમાપ્ત કરો. ટનલ ડિસ્કનેક્ટ કરો, ખાતરી કરો કે નવું જાહેર નામ નિષ્ફળ જાય, ખાતરી કરો કે ખાનગી નામ નિષ્ફળ જાય, અનેખાતરી કરો કે પોર્ટ 53 નું કોઈ પેકેટ ભૌતિક એડેપ્ટર છોડ્યું નથી. જે બ્લોક ફક્ત કેશ કરેલા જવાબો માટે ટકે છે તે બિલકુલ ટકતું નથી.
ટિકિટ બંધ કરતાં પહેલાંની ચેકલિસ્ટ:
- ભંગાણ દરમિયાન વપરાયેલું રિઝોલ્વર એ જ છે જે નીતિ ધારે છે.
- ક્લાયન્ટની પોતાની એન્ડપોઇન્ટ શોધ હજુ મંજૂર છે, કેશ દ્વારા કે અપવાદ દ્વારા.
- DoH અને DoT ક્યાં તો બ્લોકમાં આવરી લેવાય છે અથવા નીતિથી નિષ્ક્રિય છે.
- ટનલ ગયા પછી ખાનગી ઝોન ખુલ્લા નહીં, બંધ સ્થિતિમાં નિષ્ફળ જાય છે.