কম্পিউটার টিউটোরিয়াল

Windows 10-এ VPN経由でDNS解決が機能しない問題の解決

VPN কানেকশনের জন্য কনফিগার করা DNS সার্ভার এবং সাফিক্সগুলি Windows 10-এ Force Tunneling মোডে (“Use default gateway on remote network” অপশন সক্রিয় থাকলে) DNS মাধ্যমে নাম রেজল্যুশনের জন্য ব্যবহৃত হয়, যদি আপনার VPN কানেকশন এক্টিভ থাকে। এই পরিস্থিতিতে আপনি লোকাল নেটওয়ার্কে DNS নাম রেজলভ করতে পারবেন না বা ইন্টারনেট এক্সেস করতে পারবেন না আপনার ইন্টারন্যাল LAN ব্যবহার করে।

একই সময়ে, আপনি লোকাল নেটওয়ার্কের যেকোনো রিসোর্স পিং করতে পারেন (গেটওয়ে, পাশের কম্পিউটার বা প্রিন্টারের IP অ্যাড্রেস পিং করে দেখুন)। সেগুলো শুধু IP অ্যাড্রেস দিয়ে অ্যাক্সেসযোগ্য, হোস্টনেম দিয়ে নয়। কারণ Windows 10 আপনার লোকাল নেটওয়ার্কের হোস্টনেম রেজলভ করার চেষ্টা করে VPN কানেকশনের সেটিংসে নির্দিষ্ট DNS সার্ভারগুলো মাধ্যমে।

লোকাল (LAN) ইন্টারফেসের জন্য IPv6 প্রোটোকল ডিজেবল করার পরামর্শ পাওয়া যায়, যা Force-Tunneling মোড ব্যবহার করতে চাইলে সাহায্য করতে পারে।

যদি আপনি VPN কানেকশনের জন্য Split Tunneling ব্যবহার করেন (“Use default gateway on remote network” অপশন আনচেকড থাকলে), তবে আপনি লোকাল নেটওয়ার্ক থেকে ইন্টারনেট এক্সেস করতে পারবেন, কিন্তু রিমোট VPN নেটওয়ার্কের DNS অ্যাড্রেস রেজলভ করতে পারবেন না (IPv6 ডিজেবল করলে এখানে সাহায্য হয় না)।

আপনাকে বুঝতে হবে যে Windows DNS কোয়েরি সে নেটওয়ার্ক ইন্টারফেস থেকে পাঠায়, যেটির প্রায়োরিটি সবচেয়ে বেশি (ইন্টারফেস মেট্রিকের মান কম)। উদাহরণস্বরূপ, আপনার VPN কানেকশন Split Tunneling মোডে কাজ করছে (আপনি লোকাল নেটওয়ার্ক থেকে ইন্টারনেট এক্সেস করতে চান এবং কর্পোরেট রিসোর্স VPN ওভার এক্সেস করতে চান)।

PowerShell থেকে সব নেটওয়ার্ক ইন্টারফেস মেট্রিকের মান চেক করুন:

Get-NetIPInterface | Sort-Object Interfacemetric

Windows 10-এ VPN経由でDNS解決が機能しない問題の解決

উপরের স্ক্রিনশটে দেখা যাচ্ছে লোকাল ইথারনেট কানেকশনের মেট্রিক কম (২৫) VPN ইন্টারফেসের মেট্রিকের চেয়ে (১০০)। তাই DNS ট্রাফিক কম মেট্রিক মান যায়গায় वाले ইন্টারফেস দিয়ে যাচ্ছে। এর মানে আপনার DNS রিকোয়েস্টগুলি লোকাল DNS সার্ভারগুলোর কাছে যাচ্ছে VPN কানেকশনের DNS সার্ভারগুলোর কাছে না। এই কনফিগারেশনে আপনি কানেক্টেড এক্সটার্নাল VPN নেটওয়ার্কের নাম রেজলভ করতে পারবেন না।

এছাড়া Windows 8.1 এবং Windows 10-এ DNS ক্লায়েন্টের একটি নতুন ফিচার উল্লেখ করা প্রয়োজন। Smart Multi-Homed Name Resolution (SMHNR) এই OS ভার্সনগুলোরে যোগ করা হয়েছিল DNS রিকোয়েস্টের দ্রুত রেসপন্স পাওয়ার জন্য। ডিফল্টভাবে SMHNR সিস্টেমে পরিচিত সব DNS সার্ভারে একসাথে DNS রিকোয়েস্ট পাঠায় এবং যেটি সবচেয়ে আগে রেসপন্স দেয় সেটি ব্যবহার করে (LLMNR এবং NetBT কোয়েরিও পাঠায়)। এটি নিরাপদ নয় কারণ এক্সটার্নাল DNS সার্ভার (VPN কানেকশনের জন্য নির্দিষ্ট) আপনার DNS ট্রাফিক দেখতে পারে (DNS রিকোয়েস্ট লিক)। Windows 10-এ GPO দিয়ে SMHNR ডিজেবল করা যায়: Computer Configuration → Administrative Templates → Network → DNS Client → Turn off smart multi-homed name resolution = Enabled।

Windows 10-এ VPN経由でDNS解決が機能しない問題の解決

বা Windows 8.1-এ নিচের কমান্ড দিয়ে SMHNR ডিজেবল করা যায়:

Set-ItemProperty -Path "HKLM:\Software\Policies\Microsoft\Windows NT\DNSClient" -Name DisableSmartNameResolution -Value 1 -Type DWord
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters" -Name DisableParallelAandAAAA -Value 1 -Type DWord

Windows 10 Creators Update (1709) এবং নতুন ভার্সনে, DNS রিকোয়েস্ট সমস্ত পরিচিত DNS সার্ভারে একে بعد একে পাঠায় (পারালালে নয়)। আপনি একটি নির্দিষ্ট DNS-এর প্রায়োরিটি বাড়াতে পারেন এর মেট্রিক কম করে।

তাই ইন্টারফেস মেট্রিক পরিবর্তন করে আপনি DNS রিকোয়েস্ট সে কানেকশনে (LAN বা VPN) পাঠাতে পারেন যেখানে নাম রেজল্যুশন আপনার জন্য সর্বোচ্চ প্রায়োরিটি।

ইন্টারফেস মেট্রিকের মান যত কম, কানেকশনের প্রায়োরিটি তত বেশি। Windows IPv4 ইন্টারফেসের মেট্রিক স্বয়ংক্রিয়ভাবে তাদের গতি এবং টাইপ অনুযায়ী অ্যাসাইন করে। উদাহরণস্বরূপ, ২০০ Mbit/s-এর বেশি গতিবিশিষ্ট LAN কানেকশনের মেট্রিক মান ১০, এবং ৫০-৮০ Mbit/s গতিবিশিষ্ট Wi-Fi কানেকশনের মান ৫০ (টেবিল দেখুন https://support.microsoft.com/en-us/help/299540/an-explanation-of-the-automatic-metric-feature-for-ipv4-routes)।

ইন্টারফেস মেট্রিক Windows GUI, PowerShell বা netsh কমান্ড দিয়ে পরিবর্তন করা যায়।

উদাহরণস্বরূপ, আপনি চান আপনার DNS রিকোয়েস্ট VPN কানেকশন ওভার যেতে। তখন আপনাকে আপনার LAN কানেকশনগুলোর মেট্রিক বাড়াতে হবে যাতে তাদের মান ১০০-এর বেশি হয় (আমার উদাহরণে)।

Control Panel → Network & Internet → Network Connections-এ যান, আপনার ইথারনেট কানেকশনের প্রপার্টি খুলুন, TCP/IPv4 প্রপার্টি সিলেক্ট করে Advanced TCP/IP Settings ট্যাবে যান। Automatic metric অপশন আনচেক করুন এবং ইন্টারফেস মেট্রিক ১২০ সেট করুন।

Windows 10-এ VPN経由でDNS解決が機能しない問題の解決

এটি PowerShell কমান্ড দিয়েও করা যায় (Get-NetIPInterface কমান্ডলেট দিয়ে আপনার LAN ইন্টারফেসের ইনডেক্স পান):

Set-NetIPInterface -InterfaceIndex 11 -InterfaceMetric 120

বা netsh ব্যবহার করে (আপনার LAN কানেকশনের নাম নির্দিষ্ট করে):

netsh int ip set interface interface="Ethernet0" metric=120

এভাবেই আপনি আপনার VPN কানেকশনের প্রপার্টিতে মেট্রিক মান কমাতে পারেন।

Windows 10-এ VPN経由でDNS解決が機能しない問題の解決

এছাড়া আপনি PowerShell দিয়ে আপনার VPN কানেকশনের সেটিংস পরিবর্তন করতে পারেন, মোড Split Tunneling-এ আনার এবং কানেকশনের জন্য DNS সাফিক্স নির্দিষ্ট করে:

Get-VpnConnection
Set-VpnConnection -Name "VPN_work" -SplitTunneling $True
Set-VpnConnection -Name "VPN_work" -DnsSuffix yourdomainname.com

  1. উইন্ডোজ ১০-এ টাচপ্যাড কাজ না করলে সমাধান - ধাপে ধাপ গাইড

  2. উইন্ডোজ ১০-এ অটোপ্লে (AutoPlay) কাজ না করলে সমাধান

  3. উইন্ডোজ ১০ সার্চ কাজ না করলে সমাধান - কুইক ফিক্স

  4. উইন্ডোজ ১০-এ কাজ না কর रहे ওয়েবক্যাম সমাধান - ধাপে ধাপে গাইড