একটি PPTP সংযোগ উঠে আসা দেখুন এবং বিশ্বাস করা সহজ যে কঠিন অংশটি শেষ: ক্লায়েন্ট প্রমাণীকরণ করে, একটি ppp0 অ্যাডাপ্টার বা WAN Miniport দেখা যায়, এবং স্ট্যাটাস উইন্ডো সবুজ হয়ে যায়। তারপর একটি অভ্যন্তরীণ হোস্টে প্রথম অনুরোধ সময়সীমা ছাড়িয়ে যায়, এবং প্রোফাইলকে দোষ দেওয়া হয়। বাস্তবে দুটি স্বাধীন স্তর পরিষ্কার করতে হয়: বাইরের পরিবহন যা TCP 1723 এবং GRE বহন করে, এবং ভেতরের নীতি যা নির্ধারণ করে কোন গন্তব্যগুলি PPP ইন্টারফেস ব্যবহার করবে। সবুজ স্ট্যাটাস কেবল প্রমাণ করে যে প্রথম স্তরটি সমঝোতায় পৌঁছেছে; দ্বিতীয়টি সম্পর্কে এটি কিছুই বলে না।

প্রোফাইল থেকে কন্ট্রোল সকেট পর্যন্ত ক্লায়েন্টকে অনুসরণ করুন

ক্লায়েন্ট লগ খুলুন এবং যেখানে এটি সার্ভারের সাথে যোগাযোগ করে সেই বিন্দুটি খুঁজুন। PPTP প্রথমে পোর্ট 1723-এ একটি TCP সংযোগ খোলে এবং সেই চ্যানেলের মাধ্যমে টানেল প্যারামিটার নিয়ে সমঝোতা করে। এই ধাপটি ব্যর্থ হলে পরের কিছুই গুরুত্বপূর্ণ নয়, এবং ত্রুটি সাধারণত সার্ভার ঠিকানা বা সময়সীমা উল্লেখ করে।

কোনও রুট স্পর্শ করার আগে তারের উপর কন্ট্রোল সংযোগ নিশ্চিত করুন। ক্লায়েন্টে বা মিরর পোর্টে একটি সংযোগ প্রচেষ্টার জন্য TCP 1723 ক্যাপচার করুন:

sudo tcpdump -ni any 'tcp port 1723' -c 20

সম্পূর্ণ হ্যান্ডশেক এবং প্রতিষ্ঠিত সেশন মানে বাইরের কন্ট্রোল চ্যানেল কাজ করছে। যে SYN কখনও SYN-ACK পায় না তা ফায়ারওয়াল, ভুল সার্ভার ঠিকানা বা পোর্ট ফিল্টার করা সরবরাহকারীর দিকে ইঙ্গিত করে। হ্যান্ডশেকের পরপরই রিসেট এলে প্রায়ই বোঝায় সার্ভার প্রমাণপত্র বা টানেলের ধরন প্রত্যাখ্যান করেছে।

GRE একটি দ্বিতীয় প্রোটোকল, পোর্ট নয়

PPTP বর্ধিত GRE-এর ভিতরে PPP পেলোড বহন করে, IP প্রোটোকল 47, যার কোনও পোর্ট নম্বর নেই যা রাউটার ট্র্যাক করতে পারে। এজন্যই TCP 1723 অনুমোদনকারী নিয়মও টানেলকে ডেটা পথ ছাড়া রেখে দিতে পারে। স্টেটফুল NAT ডিভাইসগুলিকে উত্তর ম্যাপ করতে GRE-এর ভিতরের কল আইডি বুঝতে হয়, এবং অনেকেই তা করে না। PPTP স্পেসিফিকেশন কন্ট্রোল চ্যানেল এবং GRE পেলোডকে আলাদা অংশ হিসেবে রাখে, এবং আপনার পরীক্ষার পরিকল্পনাও তাই হওয়া উচিত।

একই ক্যাপচারে প্রোটোকল 47 দেখুন, তারপর যা বেরোয় তার সঙ্গে যা ফিরে আসে তুলনা করুন:

sudo tcpdump -ni any 'proto gre' -c 20

TCP 1723 সুস্থ থাকা অবস্থায় কোনও উত্তর ছাড়া প্যাকেট বেরিয়ে যাওয়া ব্লকড-GRE-এর চিরাচরিত চিহ্ন। গ্রাহক রাউটারে PPTP পাসথ্রু ওই নির্দিষ্ট ফার্মওয়্যারের বৈশিষ্ট্য, তাই একটি কাজ করা হোটেল নেটওয়ার্ক পরেরটি সম্পর্কে কিছুই প্রমাণ করে না। রাউটার কোনও পাসথ্রু দেয় না এবং আপনি তা বদলাতে না পারলে সমস্যা রুট টেবিল নয়, প্রোটোকল নির্বাচন।

টানেল একটি প্যাকেট চালাচল করে তা প্রমাণ করুন

GRE প্রবাহিত হলে PPP সমঝোতা ক্লায়েন্ট ইন্টারফেসে একটি ঠিকানা বরাদ্দ করে। ধরে নেওয়ার বদলে বরাদ্দটি পড়ুন:

ip -4 addr show ppp0

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

কোনও স্প্লিট রুট যোগ করার আগে এটি করুন। পরিবহন ভাঙা অবস্থায় রুট পরিবর্তন করলে দ্বিতীয় চলক তৈরি হয় এবং প্রথমটি লুকিয়ে যায়।

স্প্লিট নীতি লিখুন, DNS সহ

স্প্লিট রাউটিং সিদ্ধান্তের তালিকা, চেকবক্স নয়। যে প্রতিটি প্রাইভেট প্রিফিক্স টানেল পার হতে হবে তার PPP ইন্টারফেস দিয়ে রুট দরকার, এবং যে প্রতিটি প্রিফিক্স স্থানীয় থাকবে তা সেখানে অনুপস্থিত থাকা দরকার। অ্যাপ্লিকেশন সাবনেটের জন্য তার প্রাইভেট রিজলভারে মিলিত রুট ছাড়া রুট তৈরি করা ভাঙা অ্যাপের মতো দেখানো বিভ্রাট তৈরির একটি সাধারণ উপায়।

প্রতিটি শ্রেণিতে একটি ঠিকানার জন্য কার্নেল যে সিদ্ধান্ত নেয় তা পরীক্ষা করুন:

ip route get 10.20.5.10
ip route get 203.0.113.25

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

পাঁচ ধাপে পুনরাবৃত্তিযোগ্য পরীক্ষা

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

লিনাক্স ক্লায়েন্টের জন্য একটি সংক্ষিপ্ত সংস্করণ এমন দেখায়:

sudo tcpdump -ni any 'tcp port 1723 or proto gre' -c 40
ip -4 addr show ppp0
ping -c 3 192.0.2.1
ip route get 10.20.5.10

উইন্ডোজে একই ক্রম প্রযোজ্য route print এবং ক্লায়েন্টে দেখানো অ্যাডাপ্টার স্ট্যাটাস নিয়ে। PPTP একটি পুরনো প্রোটোকল, এবং সার্ভার SSTP বা IKEv2 দিলে, প্রতিটি হপে প্রোটোকল 47 পার হওয়ার উপর নির্ভর করা পথ টিউন করার চেয়ে সরে যাওয়া সাধারণত সময়ের ভালো ব্যবহার। পুরনো প্রোফাইল নতুন সংস্করণে কপি না করে প্রতিস্থাপনের সার্টিফিকেট ও প্রমাণীকরণ চুক্তি পরীক্ষা করুন।

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