ইন্টারনেট প্রোটোকল ভার্সন ৪ (IPv4) - সম্পূর্ণ হ্যান্ডবুক
IPv4 ইন্টারনেট এবং অন্যান্য প্যাকেট-সুইচড নেটওয়ার্কের মূল প্রোটোকল। Google-এর আপডেটেড পরিসংখ্যান অনুযায়ী ২০২৫ সালের ২৪ এপ্রিলে Google সার্ভিসের ৫৫.৭১% ট্রাফিক IPv4-এ চলছে। এই গাইডে IPv4-এর প্রতিটি দিক কভার করা হয়েছে - IP ঠিকানা থেকে প্যাকেট হেডার এবং ফ্র্যাগমেন্টেশন পর্যন্ত।
এই গাইডে কী কী আছে?
- IP ঠিকানার কাজকর্ম এবং বিভিন্ন ফরম্যাট
- নেটওয়ার্ক অ্যাড্রেসিং স্কিম: ফিক্সড-লেথ থেকে CIDR পর্যন্ত
- স্পেশাল IPv4 ঠিকানা এবং তাদের ব্যবহার
- IPv4 হেডারের প্রতিটি ফিল্ডের কাঠামো এবং উদ্দেশ্য
- বিভিন্ন নেটওয়ার্কে প্যাকেট ফ্র্যাগমেন্টেশন হ্যান্ডলিং
কভার করা টপিকস:
- ব্যাকগ্রাউন্ড
- IP ঠিকানা বোঝা
- নেটওয়ার্ক ID এবং হোস্ট ID
- নেটওয়ার্ক vs হোস্ট পোर्शन নির্ধারণ
- ফিক্সড-লেথ অ্যাপ্রোচ
- ক্লাসফুল অ্যাড্রেসিং
- CIDR: ক্লাসলেস ইন্টারডোমেন রাউটিং
- সাবনেট মাস্ক
- স্পেশাল IPv4 ঠিকানা (০.০.০.০, লুপব্যাক, ব্রอดকাস্ট ইত্যাদি)
- IPv4 হেডার কাঠামো
- IPv4 ফ্র্যাগমেন্টেশন
- সারাংশ
পেশকশ
IP মানে "Internet Protocol"। IPv4 হল Internet Protocol version 4। RFC 791-এ বর্ণিত (IETF, সেপ্টেম্বর ১৯৮১), প্রথমে ১৯৮২ সালে SATNET-এ ডিপ্লয় করা হয়েছিল। IPv4 কানেকশনলেস এবং বেস্ট-এফर्ट ডেলিভারি মডেলে কাজ করে - এটি ডেলিভারি, প্যাকেট অর্ডারিং বা ডেটা বৈধতা গ্যারান্টি দেয় না, কিন্তু দ্রুত এবং ফ্লেক্সিবল।
IP ঠিকানা বোঝা
IP ঠিকানা হায়ারার্কিক্যাল, লজিক্যাল ঠিকানা যা ৪ বাইট (৩২ বিট) এর। ডটেড ডেসিমাল নোটেশনে লেখা হয় (যেমন: ১৯২.১৬৮.১.১)। প্রতিটি বাইট ০-২৫৫ এর মধ্যে হতে হবে।
নেটওয়ার্ক ID এবং হোস্ট ID
IP ঠিকানার দুটি অংশ: নেটওয়ার্ক আইডেন্টিফায়ার (সামনের বাইটগুলো) এবং হোস্ট আইডেন্টিফায়ার (পিছনের বাইটগুলো)। একই নেটওয়ার্কের সব হোস্টের নেটওয়ার্ক ID একই থাকে।
উদাহরণ: 201.22.3.15 এবং 201.22.3.91 - একই নেটওয়ার্ক (২০১.২২.৩), ভিন্ন হোস্ট (১৫ এবং ৯১)।
নেটওয়ার্ক vs হোস্ট পোर्शन নির্ধারণের পদ্ধতিগুলো
১. ফিক্সড-লেথ অ্যাপ্রোচ
প্রথম বাইট নেটওয়ার্ক ID, বাকি তিন বাইট হোস্ট ID। সমস্যা: শুধু ২৫৬টি নেটওয়ার্ক সম্ভব, যা পর্যাপ্ত নয়।
২. ক্লাসফুল অ্যাড্রেসিং
প্রথম বাইট देखकर ক্লাস নির্ধারণ:
- Class A (১-১২৭): ১ বাইট নেটওয়ার্ক, ৩ বাইট হোস্ট
- Class B (১২৮-১৯১): ২ বাইট নেটওয়ার্ক, ২ বাইট হোস্ট
- Class C (১৯২-২২৩): ৩ বাইট নেটওয়ার্ক, ১ বাইট হোস্ট
- Class D (২২৪-২৩৯): মাল্টিকাস্ট
- Class E (২৪০-২৫৫): রিজার্ভড
সমস্যা: ছোট কোম্পানির জন্য Class C (২৫৬ ঠিকানা) ছোট, Class B (৬৫,৫৩৬) বড় - অপ্রয়োজনীয় বর্জ্য।
৩. CIDR: Classless Interdomain Routing (আধুনিক পদ্ধতি)
১৯৯৩ সালে ক্লাসফুল অ্যাড্রেসিং বাতিল করে CIDR আসে। নেটওয়ার্ক প্রিফিক্স লেন্থ নির্দিষ্ট করতে স্ল্যাশ নোটেশন ব্যবহার: 200.8.3.1/16 (প্রথম ১৬ বিট নেটওয়ার্ক ID)। এটি ফ্লেক্সিবল সাবনেটিং অনুমতি দেয়।
রিয়েল-ওয়ার্ল্ড উদাহরণ: ISP 104.16.0.0/12 ব্লক পায়, তারপর ছোট বিজনেসকে /24 (২৫৬ ঠিকানা), বড় কোম্পানিকে /20 (৪,০৯৬ ঠিকানা) দিতে পারে।
সাবনেট মাস্ক
নেটওয়ার্ক প্রিফিক্স এক্সপ্রেস করার অন্য একটি উপায়: 255.255.0.0 (বাইনারি: ১৬টি ১, প erkennbar ০)। CIDR /16 = সাবনেট মাস্ক 255.255.0.0।
নন-বাইট-আলাইনড প্রিফিক্সও সম্ভব: /14 = 255.252.0.0, /19 = 255.255.224.0। স্টার্টআপ ৩০০ এমপ্লয়ীর জন্য /23 (৫১২ ঠিকানা) নিতে পারে।
স্পেশাল IPv4 ঠিকানা
| স্পেশাল ঠিকানা | অর্থ | ব্যবহার |
|---|---|---|
0.0.0.0 | "This host" | বুট সময়ে বা সব ইন্টারফেসে লিসেন করতে |
| শূন্য দিয়ে শুরু | "This network" | লোকাল নেটওয়ার্কের হোস্টে পাঠাতে |
255.255.255.255 | ব্রอดকাস্ট | লোকাল নেটওয়ার্কের সব হোস্টে |
| নেটওয়ার্ক ID + সব ১ হোস্ট পارتی | ডিরেক্টেড ব্রอดকাস্ট | নির্দিষ্ট নেটওয়ার্কের সব হোস্টে |
127.0.0.0/8 | লুপব্যাক | ফিজিক্যাল নেটওয়ার্ক ছাড়াই টেস্ট/ডিবাগ |
IPv4 হেডার কাঠামো (RFC 791)
সাধারণ IPv4 হেডার ২০ বাইট (অপশন ছাড়া)। মূল ফিল্ডসমূহ:
- Version (৪ বিট): সবসময় ৪ (০১০০)
- IHL (৪ বিট): হেডার লেথ ৪-বাইট ওয়ার্ডে (৫ = ২০ বাইট)
- Type of Service (৮ বিট): ট্রাফিক প্রায়োরিটি (সাধারণত ০)
- Total Length (১৬ বিট): প্যাকেটের মোট লেথ (ম্যাক্স ৬৫,৫৩৫ বাইট)
- Identification (১৬ বিট): ফ্র্যাগমেন্ট গ্রুপিং용
- Flags (৩ বিট): DF (Don't Fragment), MF (More Fragments)
- Fragment Offset (১৩ বিট): মূল প্যাকেটে অফসেট (x8 গুণিত)
- TTL (৮ বিট): হপ লিমিট (প্রতি রাউটারে ১ কমে)
- Protocol (৮ বিট): ৬=TCP, ১৭=UDP
- Header Checksum (১৬ বিট): হেডার ভ্যালিডেশন
- Source/Dest Address (৩২ বিট প্রতিটি): IPv4 ঠিকানা
- Options + Padding: অপশনাল, ৪-বাইট múltiplos করার জন্য প্যাডিং
IPv4 ফ্র্যাগমেন্টেশন
কেন প্রয়োজন?
বিভিন্ন নেটওয়ার্কের MTU (Maximum Transmission Unit) ভিন্ন। যেমন: ইথারনেট MTU ১৫০০ বাইট। যদি ১৮০০ বাইটের প্যাকেট ১৫০০ MTU নেটওয়ার্কে যাবে, রাউটার এটিকে ফ্র্যাগমেন্ট করবে।
কীভাবে কাজ করে?
- Identification Field: একই প্যাকেটের ফ্র্যাগমেন্টগুলোর একই ID থাকে
- Fragment Offset: মূল প্যাকেট থেকে অফসেট (বাইট/৮), ১৩ বিট
- MF Flag: লাস্ট ফ্র্যাগমেন্ট ছাড়া সবার জন্য ১
- DF Flag: ১ হলে ফ্র্যাগমেন্টেশন বাধা, ICMP "Fragmentation Needed" পাঠানো হয়
উদাহরণ: ১৮০০ বাইট প্যাকেট, MTU ১৫০০
প্রথম ফ্র্যাগমেন্ট: Total Length ১৫০০, ID ১৩৩৭, MF=১, Offset=০
দ্বিতীয় ফ্র্যাগমেন্ট: Total Length ৩৪০, ID ১৩৩৭, MF=০, Offset=১৮৫ (১৪৮০/৮)
সারাংশ - IPv4
অ্যাড্রেসিং এবং নেটওয়ার্ক স্ট্রাকচার
- ৩২-বিট IP ঠিকানা, ডটেড ডেসিমাল নোটেশন
- CIDR: আধুনিক, ফ্লেক্সিবল নেটওয়ার্ক সাইজিং
- স্পেশাল ঠিকানা: ০.০.০.০, ১২৭.০.০.০/৮, ২৫৫.২৫৫.২৫৫.২৫৫
IPv4 হেডার
- ভার্সন, IHL, TOS, Total Length, TTL, Protocol, Checksum
- সোর্স/ডেস্টিনেশন অ্যাড্রেস, ফ্র্যাগমেন্টেশন ফিল্ডস
- সাধারণত ২০ বাইট (অপশন ছাড়া)
ফ্র্যাগমেন্টেশন
- বিভিন্ন MTU নেটওয়ার্ক ট্রভার্স করার জন্য
- Identification, Flags, Fragment Offset ফিল্ডস ব্যবহার
চূড়ান্ত কথা
IPv4-এর সীমাবদ্ধতা (অ্যাড্রেস স্পেস) থাকলেও এর সুন্দর ডিজাইন এবং রোবাস্ট ফিচার ৪ দশক ধরে ইন্টারনেটের ব্যাকবোন बना हुआ है। IPv4 বোঝা আধুনিক নেটওয়ার্ক এবং IPv6-এ ট্রানজিশনের জন্য অপরিহার্য।
লেখক পরিচিতি
ওমার রোসেনবাম Swimm-এর CTO। Brief YouTube চ্যানেলের লেখক। সাইবার ট্রেনিং এক্সপার্ট এবং Checkpoint Security Academy-এর ফাউন্ডার। "Gitting Things Done" (ইংরেজি) এবং "Computer Networks" (হিব্রু) বইয়ের লেখক।
অতিরিক্ত রেফারেন্স
- Computer Networks Playlist - Brief চ্যানেলে
ফ্রিতে কোডিং শিখুন। freeCodeCamp-এর ওপেন সোর্স ক্যারিকুলাম ৪০,০০০ এরও অধিক মানুষকে ডেভেলপার হিসেবে চাকরি পেতে সাহায্য করেছে। শুরু করুন