5.1 NAT এর ভূমিকা

আরেকটি খুব আকর্ষণীয় বিষয় হল NAT। NAT মানে নেটওয়ার্ক ঠিকানা অনুবাদ এবং সাধারণত প্রতিটি রাউটারে একটি পরিষেবা হিসাবে উপস্থিত থাকে। তাই এটা কি এবং কেন এটা প্রয়োজন?

NAT হল একটি বিন্দু যার মাধ্যমে স্থানীয় নেটওয়ার্কগুলিকে বিশ্বব্যাপী নেটওয়ার্কের সাথে সংযুক্ত করা যায়, যেমন ইন্টারনেট, উদাহরণস্বরূপ।

আপনি ইতিমধ্যেই জানেন, স্থানীয় নেটওয়ার্কগুলিতে, সমস্ত কম্পিউটারের (এবং নেটওয়ার্কের সাথে সংযুক্ত অন্যান্য ডিভাইস) তাদের নিজস্ব স্থানীয় আইপি ঠিকানা রয়েছে। এবং ইন্টারনেটে একটি সার্ভারের সাথে ডেটা বিনিময় করার জন্য, আমাদের কম্পিউটার সার্ভারে একটি অনুরোধ পাঠাতে পারে এবং সার্ভার আমাদের একটি প্রতিক্রিয়া পাঠাতে পারে। এবং আমাদের স্থানীয় নেটওয়ার্কের বাইরে আমাদের আইপি ঠিকানা অজানা থাকলে তিনি কোথায় একটি প্রতিক্রিয়া পাঠাবেন?

কল্পনা করুন যে আপনি ডোনাল্ড ট্রাম্পকে একটি কাগজের চিঠি লিখছেন। ট্রাম্প একজন পাবলিক ফিগার, তিনিই একমাত্র - এটি আমাদের পাবলিক সার্ভার। এবং আপনি চিঠিতে ফিরতি ঠিকানা হিসাবে Masha নির্দেশ করুন. অনেক ম্যাশ. কোন Masha উত্তর পাঠানো উচিত?

তাই আপনি ওয়াশিংটনে আপনার পরিচিতকে, একজন পাবলিক ফিগারকে একটি চিঠি পাঠান, যাতে ট্রাম্পকে পাঠানোর জন্য কঠোর নির্দেশনা থাকে। আপনার বন্ধু একটি চিঠি পায়, ট্রাম্পের কাছে পাঠায় এবং ফেরার ঠিকানা হিসেবে ওয়াশিংটনে তার ঠিকানা দেয়।

তারপরে, ট্রাম্পের কাছ থেকে প্রতিক্রিয়া পাওয়ার পরে, পরিচিত ব্যক্তি এটি আপনার কাছে ফরোয়ার্ড করে। আইপি প্যাকেটের সাথে একই...

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

শুধু NAT ব্যক্তিগত ঠিকানাগুলিকে পাবলিকগুলিতে অনুবাদ করে৷ এটি একটি স্থানীয় IP ঠিকানা সহ একটি ডিভাইসকে তার ব্যক্তিগত নেটওয়ার্কের বাইরে সংস্থানগুলি অ্যাক্সেস করতে দেয়৷ NAT, স্থানীয় IP ঠিকানাগুলির সাথে মিলিত, সর্বজনীন IPv4 ঠিকানাগুলি বজায় রাখার জন্য একটি দরকারী পদ্ধতি হিসাবে প্রমাণিত হয়েছে।

পৃথিবীতে 8 বিলিয়ন মানুষ আছে, এবং ইতিমধ্যেই আরও অনেক নেটওয়ার্ক ডিভাইস রয়েছে: ফোন, ল্যাপটপ, স্মার্ট ঘড়ি, সার্ভার, যেকোনো স্মার্ট ডিভাইস। আর মাত্র ৪ বিলিয়ন আইপি অ্যাড্রেস আছে। এটি অনেকের মতো মনে হয়েছিল, কিন্তু ইন্টারনেটের দ্রুত বৃদ্ধির সাথে, এটি সবার কাছে পরিষ্কার হয়ে গেছে যে এটি যথেষ্ট নয়।

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

NAT-এ 5.2 সাবনেট

LAN সাধারণত ব্যক্তিগত IP ঠিকানা দিয়ে ডিজাইন করা হয়। এগুলি ব্যক্তিগত সাবনেট থেকে ঠিকানা 10.0.0.0/8, 172.16.0.0/12এবং 192.168.0.0/16এই আইপি ঠিকানাগুলি একটি সংস্থা বা সাইট দ্বারা অভ্যন্তরীণভাবে ডিভাইসগুলিকে স্থানীয়ভাবে যোগাযোগ করার অনুমতি দেওয়ার জন্য ব্যবহার করা হয়, সেগুলি ইন্টারনেটে রাউটেবল নয়৷

NAT-সক্ষম রাউটারগুলি এক বা একাধিক বৈধ পাবলিক IPv4 ঠিকানাগুলির সাথে কনফিগার করা যেতে পারে। এই পাবলিক ঠিকানাগুলিকে NAT পুল বলা হয়।

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

একটি NAT রাউটার সাধারণত একটি Stub নেটওয়ার্কের প্রান্তে কাজ করে। একটি স্টাব নেটওয়ার্ক হল নেটওয়ার্ক তত্ত্ব থেকে একটি শব্দ: একটি স্টাব নেটওয়ার্ক যার একটি প্রতিবেশী নেটওয়ার্কের সাথে একটি সংযোগ রয়েছে, নেটওয়ার্ক থেকে একটি প্রবেশ এবং প্রস্থান।

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

5.3 NAT পরিভাষা

আপনি যদি নেটওয়ার্কের তত্ত্বের দিকে তাকান, তাহলে NAT হল একটি অভ্যন্তরীণ নেটওয়ার্ক, যা অনুবাদ করার জন্য সাবনেটগুলির একটি সেট৷ বাহ্যিক নেটওয়ার্ক অন্য সমস্ত নেটওয়ার্ককে বোঝায়।

NAT ব্যবহার করার সময়, IP ঠিকানাগুলি একটি প্রাইভেট নেটওয়ার্কে নাকি একটি পাবলিক নেটওয়ার্কে (ইন্টারনেটে) এবং ট্র্যাফিক ইনকামিং বা আউটগোয়িং কিনা তার উপর ভিত্তি করে বিভিন্ন উপাধি থাকে।

NAT চার ধরনের ঠিকানা অন্তর্ভুক্ত করে:

  • অভ্যন্তরীণ স্থানীয় ঠিকানা (স্থানীয় ঠিকানার ভিতরে);
  • অভ্যন্তরীণ বৈশ্বিক ঠিকানা (বৈশ্বিক ঠিকানার ভিতরে);
  • স্থানীয় ঠিকানার বাইরে ;
  • বাহ্যিক বৈশ্বিক ঠিকানা (বৈশ্বিক ঠিকানার বাইরে);

কোন ধরনের ঠিকানা ব্যবহার করা হচ্ছে তা নির্ধারণ করার সময়, এটি মনে রাখা গুরুত্বপূর্ণ যে NAT পরিভাষা সর্বদা অনুবাদিত ঠিকানার সাথে ডিভাইসের দৃষ্টিকোণ থেকে প্রয়োগ করা হয়:

  • অভ্যন্তরীণ ঠিকানা (অভ্যন্তরীণ ঠিকানা) - ডিভাইসের ঠিকানা যা NAT দ্বারা অনুবাদ করা হয়েছে;
  • বাইরের ঠিকানা - গন্তব্য ডিভাইস ঠিকানা;
  • একটি স্থানীয় ঠিকানা হল নেটওয়ার্কে অভ্যন্তরীণভাবে প্রদর্শিত যেকোনো ঠিকানা;
  • একটি গ্লোবাল অ্যাড্রেস হল নেটওয়ার্কের বাইরে প্রদর্শিত যেকোনো ঠিকানা।

এর একটি ডায়াগ্রাম উদাহরণ সহ এটি তাকান.

বাম দিকের ছবিতে কম্পিউটারে একটি অভ্যন্তরীণ স্থানীয় ( স্থানীয় ভিতরের ) ঠিকানা রয়েছে 192.168.1.5এবং এর দৃষ্টিকোণ থেকে, ওয়েব সার্ভারের একটি বহিরাগত ( বাইরের ) ঠিকানা রয়েছে 208.141.17.4। যখন ডেটা প্যাকেটগুলি কম্পিউটার থেকে ওয়েব সার্ভারের গ্লোবাল অ্যাড্রেসে পাঠানো হয়, তখন পিসির অভ্যন্তরীণ স্থানীয় ( ভিতরের লোকাল208.141.16.5 ) ঠিকানাটি ( ভিতরে গ্লোবাল ) তে অনুবাদ করা হয়। বাহ্যিক ডিভাইস ঠিকানা সাধারণত অনুবাদ করা হয় না কারণ এটি একটি সর্বজনীন IPv4 ঠিকানা।

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

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

5.4 প্যাকেট পথ

আপনি যদি ইতিমধ্যে ক্লান্ত হয়ে থাকেন তবে পরবর্তী লেকচারে যান। আপনি যদি এখনও আগ্রহী হন, তাহলে ওয়ার্মহোলের নিচে আরও স্বাগত জানাই।

নীচের চিত্রটি দেখায় কিভাবে একটি অভ্যন্তরীণ কম্পিউটার থেকে একটি বাহ্যিক ওয়েব সার্ভারে NAT-সক্ষম রাউটারের মাধ্যমে ট্র্যাফিক পাঠানো হয়, পাঠানো হয় এবং ফেরত পাঠানো হয়।

NAT 3-এ সাবনেট
রাউটার NAT টেবিল
পিসি ওয়েব সার্ভার
Insde গ্লোবাল লোকালের ভিতরে স্থানীয় বাইরে গ্লোবাল বাইরে
208.141.17.4 192.168.1.5 208.141.16.5 208.141.16.5

ভিতরের স্থানীয় ঠিকানা - অভ্যন্তরীণ নেটওয়ার্ক থেকে দেখা উৎস ঠিকানা। চিত্রে, ঠিকানাটি 192.168.1.5কম্পিউটারে বরাদ্দ করা হয়েছে - এটি তার অভ্যন্তরীণ স্থানীয় ঠিকানা।

বিশ্বব্যাপী ঠিকানার ভিতরে - বাইরের নেটওয়ার্ক থেকে দেখা উৎস ঠিকানা। চিত্রে, যখন কম্পিউটার থেকে ট্র্যাফিক ওয়েব সার্ভারে পাঠানো হয় 208.141.17.4, তখন রাউটার অভ্যন্তরীণ স্থানীয় ঠিকানা (স্থানীয় ঠিকানা) অভ্যন্তরীণ বৈশ্বিক ঠিকানায় (বৈশ্বিক ঠিকানার ভিতরে) অনুবাদ করে। এই ক্ষেত্রে, রাউটার IPv4 উৎস ঠিকানা থেকে 192.168.1.5তে পরিবর্তন করে 208.141.16.5

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

বাইরের স্থানীয় ঠিকানা - অভ্যন্তরীণ নেটওয়ার্ক থেকে দেখা প্রাপকের ঠিকানা। এই উদাহরণে, কম্পিউটারটি ওয়েব সার্ভারে ট্রাফিক পাঠায়208.141.17.4

এখন পুরো প্যাকেজ পাথ তাকান. ঠিকানা সহ কম্পিউটারটি 192.168.1.5ওয়েব সার্ভারের সাথে যোগাযোগের চেষ্টা করছে 208.141.17.4। যখন একটি প্যাকেট একটি NAT-সক্ষম রাউটারে আসে, তখন এটি প্যাকেটের গন্তব্য আইপি ঠিকানা পড়ে তা নির্ধারণ করে যে প্যাকেটটি অনুবাদের জন্য নির্দিষ্ট মানদণ্ডের সাথে মেলে কিনা। এই উদাহরণে, উৎস ঠিকানা মানদণ্ডের সাথে মেলে এবং 192.168.1.5(স্থানীয় ঠিকানার ভিতরে) থেকে 208.141.16.5(বৈশ্বিক ঠিকানার ভিতরে) অনুবাদ করা হয়।

রাউটার NAT টেবিলে এই স্থানীয়-থেকে-গ্লোবাল ঠিকানা ম্যাপিং যোগ করে এবং অনুবাদিত উৎস ঠিকানা সহ প্যাকেটটি গন্তব্যে পাঠায়। ওয়েব সার্ভার পিসির অভ্যন্তরীণ বৈশ্বিক ঠিকানা ( 208.141.16.5) এ সম্বোধন করা একটি প্যাকেটের সাথে প্রতিক্রিয়া জানায়।

রাউটার একটি গন্তব্য ঠিকানা সহ একটি প্যাকেট পায় 208.141.16.5এবং সেই ম্যাপিংয়ের জন্য একটি এন্ট্রির জন্য NAT টেবিলটি পরীক্ষা করে। 208.141.16.5এটি এই তথ্য ব্যবহার করে এবং ভিতরের বিশ্বব্যাপী ঠিকানা ( )টিকে ভিতরের স্থানীয় ঠিকানায় ( ) অনুবাদ করে 192.168.1.5, প্যাকেটটি পিসির দিকে পুনঃনির্দেশিত হয়।

5.5 NAT এর সুবিধা এবং অসুবিধা

NAT পরিষেবা একটি অত্যন্ত শক্তিশালী সমাধান যা সর্বত্র ব্যবহৃত হয়। NAT সহ অনেক সুবিধা প্রদান করে :

  • NAT নমনীয় LAN অপারেশন প্রদান করে একটি নিবন্ধিত ঠিকানা স্কিম বজায় রাখে। NAT এর সাথে, অভ্যন্তরীণ হোস্ট সমস্ত বাহ্যিক যোগাযোগের জন্য একটি পাবলিক আইপি ঠিকানা ভাগ করতে পারে। অনেক অভ্যন্তরীণ হোস্ট সমর্থন করার জন্য এই ধরনের কনফিগারেশনের জন্য খুব কম বাহ্যিক ঠিকানা প্রয়োজন।
  • NAT ইন্টারনেট সংযোগের নমনীয়তা বাড়ায়। নির্ভরযোগ্য পাবলিক নেটওয়ার্ক সংযোগ প্রদানের জন্য একাধিক পুল, ব্যাকআপ পুল এবং লোড ব্যালেন্সিং পুল প্রয়োগ করা যেতে পারে।
  • NAT নেটওয়ার্কের অভ্যন্তরীণ ঠিকানা স্কিমগুলির জন্য ধারাবাহিকতা প্রদান করে। ব্যক্তিগত IP ঠিকানা এবং NAT ব্যবহার করে না এমন একটি নেটওয়ার্কে, সাধারণ IP ঠিকানা স্কিম পরিবর্তন করার জন্য বিদ্যমান নেটওয়ার্কে সমস্ত হোস্টকে পুনর্নির্দেশ করা প্রয়োজন। হোস্ট ফরওয়ার্ডিং খরচ উল্লেখযোগ্য হতে পারে. NAT বিদ্যমান IPv4 প্রাইভেট অ্যাড্রেসিং স্কিমটিকে থাকার অনুমতি দেয় এবং নতুন পাবলিক অ্যাড্রেসিং স্কিম সহজেই পরিবর্তন করার অনুমতি দেয়। এর মানে হল যে একটি সংস্থা প্রদানকারী পরিবর্তন করতে পারে এবং তার অভ্যন্তরীণ গ্রাহকদের কোন পরিবর্তন করতে হবে না।
  • NAT নেটওয়ার্ক নিরাপত্তা প্রদান করে । যেহেতু প্রাইভেট নেটওয়ার্কগুলি তাদের ঠিকানা বা অভ্যন্তরীণ টপোলজির বিজ্ঞাপন দেয় না, তাই নিয়ন্ত্রিত বাহ্যিক অ্যাক্সেস পেতে NAT-এর সাথে ব্যবহার করা হলে তারা যুক্তিসঙ্গতভাবে নির্ভরযোগ্য থাকে। যাইহোক, আপনাকে বুঝতে হবে যে NAT ফায়ারওয়াল প্রতিস্থাপন করে না।

কিন্তু NAT এর কিছু অসুবিধা আছে । ইন্টারনেটে হোস্টরা প্রাইভেট নেটওয়ার্কের অভ্যন্তরে একটি প্রকৃত হোস্টের পরিবর্তে একটি NAT-সক্ষম ডিভাইসের সাথে সরাসরি কথা বলে মনে হয় তা বেশ কয়েকটি সমস্যার সৃষ্টি করে:

  • NAT ব্যবহারের একটি অসুবিধা হল নেটওয়ার্ক পারফরম্যান্সের সাথে, বিশেষ করে ভিওআইপির মতো রিয়েল-টাইম প্রোটোকলের জন্য। NAT সুইচিং বিলম্ব বাড়ায় কারণ প্যাকেট হেডারে প্রতিটি IP ঠিকানা অনুবাদ করতে সময় লাগে।
  • NAT ব্যবহার করার আরেকটি অসুবিধা হল এন্ড-টু-এন্ড অ্যাড্রেসিং হারিয়ে যায়। অনেক ইন্টারনেট প্রোটোকল এবং অ্যাপ্লিকেশনগুলি উৎস থেকে গন্তব্যে এন্ড-টু-এন্ড ঠিকানার উপর নির্ভর করে। কিছু অ্যাপ্লিকেশন NAT এর সাথে কাজ করে না। একটি যোগ্য ডোমেন নামের পরিবর্তে প্রকৃত ঠিকানা ব্যবহার করে এমন অ্যাপ্লিকেশনগুলি গন্তব্যে পৌঁছাতে ব্যর্থ হয় যা NAT রাউটারের মাধ্যমে অনুবাদ করা হয়। এটি কখনও কখনও স্ট্যাটিক NAT ম্যাপিং প্রয়োগ করে এড়ানো যেতে পারে।
  • এন্ড-টু-এন্ড IPv4 ট্রেসিংও হারিয়ে গেছে। একাধিক NAT হপ-এ একাধিক প্যাকেট ঠিকানা পরিবর্তন করে এমন প্যাকেটগুলিকে ট্রেস করা আরও কঠিন, সমস্যা সমাধান করা কঠিন করে তোলে।
  • NAT-এর ব্যবহার IPsec-এর মতো টানেলিং প্রোটোকলকেও কঠিন করে তোলে কারণ NAT হেডারের মান পরিবর্তন করে যা IPsec এবং অন্যান্য টানেলিং প্রোটোকল দ্বারা সম্পাদিত অখণ্ডতা পরীক্ষায় হস্তক্ষেপ করে।
  • যে পরিষেবাগুলির জন্য বাহ্যিক নেটওয়ার্ক থেকে শুরু করার জন্য TCP সংযোগের প্রয়োজন হয়, বা UDP ব্যবহার করার মতো স্টেটলেস প্রোটোকলগুলি ভেঙে যেতে পারে। যদি NAT রাউটার এই প্রোটোকলগুলিকে সমর্থন করার জন্য কনফিগার করা না থাকে, তাহলে ইনকামিং প্যাকেটগুলি তাদের গন্তব্যে পৌঁছাতে পারে না।