VPN ইনস্টল করা একটি হোস্ট করা সার্ভার শেষ পর্যন্ত তিনটি ঠিকানা ধারণ করে, এবং তাদের মধ্যে কেবল একটি-ই প্রতিটি সেই জায়গার জন্য প্রযোজ্য যা আপনি কনফিগার করতে যাচ্ছেন। প্রোভাইডারের প্যানেল থেকে নম্বরটি DNS-এ, কোনো শ্রোতার মধ্যে বা অনুমতি তালিকায় কপি করাই এমন একটি পথ যেখানে একটি কার্যকর টানেল এমন পরিষেবায় পরিণত হয় যেখানে কেউ পৌঁছাতে পারে না। এই নির্দেশিকা কাজটিকে এমন ক্রমে সাজায় যাতে প্রতিটি ঠিকানা একটি ঘোষিত উদ্দেশ্যে বেছে নেওয়া হয়। এটি সেই কমান্ডগুলিও তালিকাভুক্ত করে যা যাচাই করে যে আপনি আসলে কী প্রকাশ করেছেন।

কিছু প্রকাশ করার আগে তিনটি ঠিকানার মানচিত্র তৈরি করুন

সেগুলিকে কাজ অনুসারে নাম দিন। underlay ঠিকানা হল যা মেশিন ইন্টারনেটের মাধ্যমে VPN-এর শেষ বিন্দুতে পৌঁছাতে ব্যবহার করে, এবং এটি প্রায়শই প্রোভাইডারের NAT-এর পিছনে ব্যক্তিগত থাকে। টানেলের ঠিকানা VPN-এর ভিতরে থাকে এবং পণ্য অনুসারে সার্ভার বা ক্লায়েন্ট দেয়। পাবলিক নির্গমন সেই ঠিকানা যা একটি দূরবর্তী ওয়েবসাইট অনুবাদের পরে রেকর্ড করে, এবং আপনার জিজ্ঞাসা করতে পারে এমন কোনো ইন্টারফেসে এর থাকা আবশ্যক নয়।

একটি প্যানেল যা একটি মেশিনের জন্য একটি পাবলিক ঠিকানা দেখায়, বাকি দুটি ভূমিকা সম্পর্কে আপনাকে খুব কম বলে। underlay-এর নাগাল একটি প্রয়োজন, কেনাকাটা নয়: ঘরোয়া রাউটারের পিছনের ল্যাপটপ পাবলিক IPv4 ঠিকানা ছাড়াই হোস্ট করা VPN শেষ বিন্দুতে পৌঁছাতে পারে। আপনি যা করতে পারেন না তা হল এমন একটি নাম লিখে প্রবেশপথ তৈরি করা যা এমন ঠিকানায় সমাধান হয় যা কেউ এগিয়ে পাঠায় না।

পরিষেবা অনুসারে ঠিকানা বেছে নিন, লেবেল অনুসারে নয়

নম্বর বেছে নেওয়ার আগে লিখে নিন সার্ভারকে কী করতে হবে। বাইরে যাওয়া API কলে স্থিতিশীল নির্গমন দরকার হয় যখন অন্য পক্ষ অনুমতি তালিকা রাখে। ব্যক্তিগত অ্যাক্সেসের জন্য এমন টানেল ঠিকানা দরকার যেখানে ক্লায়েন্ট রুট করতে পারে এবং সেটির সঙ্গে যুক্ত শ্রোতা। পাবলিক হোস্টিংয়ের জন্য এমন প্রবেশ ম্যাপিং দরকার যা প্রোভাইডার সত্যিই দেয়, এবং কেবল নির্গমনের ঠিকানা তা দেয় না।

একটি মেশিন তিনটি উদ্দেশ্যই পূরণ করতে পারে এবং তবুও তিনটি আলাদা ঠিকানা ব্যবহার করতে পারে। যা ভাঙে তা হল এই ধারণা যে একটি মান তাদের সবগুলিকে ঢেকে দেয়:

RequirementValue that belongs thereWhat you see when the roles are swapped
Outbound allowlistingPublic exitRequests reach the service but are rejected
Private client accessTunnel addressClient connects, nothing answers
Inbound web serviceProvider mappingName resolves, connection times out

প্রবেশের সারিটি সেইটি নিয়ে মানুষ তর্ক করে। নির্গমনের ঠিকানার দিকে ইঙ্গিত করা একটি রেকর্ড কোনো শ্রোতা, ফায়ারওয়ালের ছিদ্র বা পোর্ট ম্যাপিং তৈরি করে না, এবং অপেক্ষা করলে তা বদলায় না। যখন প্রোভাইডার একটি নিবেদিত ঠিকানা প্রবেশ নিয়মের সঙ্গে বিক্রি করে, তখন সেই বান্ডেলই সেই সক্ষমতা যা আপনি কিনেছেন; কেবল ঠিকানা নিজে অধিকার নয়।

কোন ঠিকানা কোনটি তা দেখানো কমান্ড

মেশিন পড়ুন, প্যানেল নয়। ইন্টারফেসের নাম সিস্টেম অনুসারে আলাদা হয়, তাই ঠিকানাগুলিকে ডিভাইসের সঙ্গে মিলিয়ে দিন, কোনো লেবেলে ভরসা করার বদলে।

প্রথম লাইনটি প্রতিটি IPv4 ঠিকানা এবং তার ডিভাইস তালিকাভুক্ত করে, এবং দ্বিতীয়টি কার্নেলকে জিজ্ঞাসা করে কোনো পরিচিত বাহ্যিক গন্তব্যের জন্য সে কোন ডিভাইস ব্যবহার করবে:

ip -brief -4 addr show
ip -4 route get 198.51.100.10
curl -4 -s https://ifconfig.me
ss -lntp | grep -E ':(443|1194)'

যদি রুট অনুসন্ধান পাবলিক ট্র্যাফিকের জন্য টানেল ডিভাইস দিয়ে উত্তর দেয়, তবে আপনার সম্পূর্ণ টানেল কার্যকর। শ্রোতা পরীক্ষাও সমান গুরুত্বপূর্ণ, কারণ কেবল 127.0.0.1-এ আবদ্ধ একটি প্রক্রিয়া টানেল ঠিকানায় কখনও উত্তর দেবে না, আপনি যে নামই প্রকাশ করুন না কেন।

এটি প্রকাশ করুন, তারপর বাইরে থেকে যাচাই করুন

কেবল সেই মান প্রকাশ করুন যা পরিষেবার প্রয়োজন এবং তার বেশি কিছু নয়: হোস্টিংয়ের জন্য A বা AAAA রেকর্ড, বাইরে যাওয়া কলে জন্য অনুমতি তালিকার এন্ট্রি, ব্যক্তিগত অ্যাক্সেসের জন্য ক্লায়েন্ট প্রোফাইল। তারপর যে অবস্থানটি গুরুত্বপূর্ণ সেখান থেকে পরীক্ষা করুন, এবং সেটি কখনও সেই মেশিন নয় যা আপনি এইমাত্র সম্পাদনা করেছেন।

দুটি পরীক্ষা বেশিরভাগটাই ঢেকে দেয়, এবং দুটিই স্ক্রিপ্টে রাখার মতো সস্তা:

dig +short vpn.example.net A
curl -4 -sS -o /dev/null -w '%{http_code}\n' https://vpn.example.net/health

একটি DNS উত্তর যা প্রমাণ করে আপনার রেকর্ড আছে, তা এই প্রমাণ নয় যে কোনো অনুরোধ পৌঁছায়, এবং একটি সফল অনুরোধ কেবল এটাই প্রমাণ করে যে একটি পথ একটি নেটওয়ার্ক থেকে কাজ করে। অনুমতি তালিকা জড়িত থাকলে মোবাইল সংযোগ থেকে পরীক্ষাটি পুনরাবৃত্তি করুন, কারণ আপনি যে নির্গমন দেখেন তা ঠিকানা পরিবার এবং নেওয়া পথের উপর নির্ভর করতে পারে। লিখে রাখুন আপনি কোন পরিবার যাচাই করেছেন; একটি কার্যকর IPv4 পথ IPv6 সম্পর্কে একেবারেই কিছু বলে না।

যদি পরিষেবাটি প্রবেশমুখী হয়, নির্গমনের ঠিকানা যথেষ্ট নয়

প্রবেশ অ্যাক্সেসের জন্য চারটি জিনিস এক লাইনে দরকার: এমন নাম বা ঠিকানা যেখানে ক্লায়েন্ট পৌঁছাতে পারে, এমন পথ যা প্যাকেট মেশিনে পৌঁছে দেয়, এমন শ্রোতা যা তা গ্রহণ করে, এবং এমন নীতি যা তা ফেলে না। একটি VPN দ্বিতীয় উপাদানটি বদলায় এবং কখনও প্রথমটিও, আর তৃতীয় ও চতুর্থের জন্য কিছুই করে না। যখন টানেলই ডেলিভারির পথ, তখন ক্লায়েন্ট নির্গমনের বদলে টানেল ঠিকানায় সংযুক্ত হয়।

লিখে রাখুন প্রতিটি পরিষেবা কোন ঠিকানার উপর নির্ভরশীল, তারপর প্রোভাইডার তার রাউটিং মডেল বদলালে সেই নোটটি আবার দেখুন। যে সার্ভার ব্যক্তিগতভাবে উত্তর দেয় এবং প্রকাশ্যে ব্যর্থ হয় তা সাধারণত নষ্ট নয়; এটি ভুল পরিচয়ে উত্তর দিচ্ছে, এবং মেরামত হল একটি ম্যাপিং সিদ্ধান্ত, ফায়ারওয়াল পরিবর্তন নয়।

সম্পর্কিত নিবন্ধ