আইপি ফরওয়ার্ডিং শব্দটি একই ডিভাইসে একটি নেটওয়ার্ক ইন্টারফেস থেকে অন্যটিতে একটি নেটওয়ার্ক প্যাকেজ পাঠানোর বর্ণনা দেয়। যখন আপনি আপনার সিস্টেমকে একটি রাউটার হিসাবে কাজ করতে চান তখন এটি সক্ষম হওয়া উচিত যা আইপি প্যাকেটগুলিকে এক নেটওয়ার্ক থেকে অন্য নেটওয়ার্কে স্থানান্তর করে।
একটি লিনাক্স সিস্টেমে লিনাক্স কার্নেলের একটি ভেরিয়েবল আছে যার নাম `ip_forward` যা এই মান রাখে। ফাইল `/proc/sys/net/ipv4/ip_forward` ব্যবহার করে এটি অ্যাক্সেসযোগ্য। ডিফল্ট মান হল 0 যার মানে কোন আইপি ফরওয়ার্ডিং নয়, কারণ একজন নিয়মিত ব্যবহারকারী যিনি অতিরিক্ত উপাদান ছাড়া একটি কম্পিউটার চালান তার সাধারণত প্রয়োজন হয় না। বিপরীতে, রাউটার, গেটওয়ে এবং ভিপিএন সার্ভারের জন্য এটি বেশ প্রয়োজনীয় একটি বৈশিষ্ট্য।
পরবর্তী, আমরা আপনাকে ব্যাখ্যা করব কিভাবে সাময়িকভাবে এবং স্থায়ীভাবে আইপি ফরওয়ার্ডিং সক্ষম করতে হয়।
আইপি ফরওয়ার্ডিং একটি অস্থায়ী সমাধান হিসাবে
ফ্লাইতে এই কার্নেল প্যারামিটারটি সক্ষম করার জন্য আপনার দুটি বিকল্প আছে। বিকল্প 1 কেবল উপরে থেকে ভেরিয়েবলে 1 এর মান সংরক্ষণ করে:
#বের করে দিল ঘ > /শতাংশ/sys/জাল/ipv4/ip_forward
বিকল্প 2 'sysctl' কমান্ড ব্যবহার করে যা আপনাকে রানটাইমের সময় বিভিন্ন কার্নেল প্যারামিটার সামঞ্জস্য করতে দেয় [2]। প্রশাসনিক ব্যবহারকারী হিসাবে নিম্নলিখিত কমান্ডটি চালান:
#sysctl-ভিতরেnet.ipv4.ip_forward =ঘমনে রাখবেন যে এই সেটিংটি তাত্ক্ষণিকভাবে পরিবর্তিত হয়। এছাড়াও, সিস্টেমটি পুনরায় বুট করার পরে ফলাফল সংরক্ষণ করা হবে না।
আপনি নিম্নরূপ সঞ্চিত মান জিজ্ঞাসা করতে পারেন:
#বিড়াল /শতাংশ/sys/জাল/ipv4/ip_forwardএই কমান্ডটি কোন আইপি ফরওয়ার্ডিংয়ের জন্য 0 এর মান এবং আইপি ফরওয়ার্ডিং সক্ষম করার জন্য 1 এর মান প্রদান করে। একটি বিকল্প হিসাবে, `sysctl` ব্যবহার করে আপনাকে বর্তমান অবস্থাও দেখায়:
# sysctl net.ipv4.ip_forwardnet.ipv4.ip_forward =0
#
স্থায়ীভাবে আইপি ফরওয়ার্ডিং সক্ষম করা
এটি অর্জনের জন্য অন্য কিছু পদক্ষেপ করতে হবে। প্রথমে, `/etc/sysctl.conf` ফাইলটি সম্পাদনা করুন। # Net.ipv4.ip_forward = 1 এন্ট্রি ধারণকারী একটি লাইন খুঁজুন এবং লাইনের শুরুতে # সরান।
তারপরে, ফাইলটি সংরক্ষণ করুন এবং সমন্বিত সেটিংস সক্ষম করার জন্য `sysctl` কমান্ডটি চালান:
#sysctl-পি /ইত্যাদি/sysctl.conf`-P` বিকল্পটি‘ –load` এর জন্য সংক্ষিপ্ত, এবং কনফিগারেশন ফাইলের জন্য একটি নাম প্রয়োজন।
পরবর্তী, proc ফাইল সিস্টেমটি পুনরায় চালু করুন যা নিম্নলিখিত কমান্ডটি ব্যবহার করে লিনাক্স কার্নেলের অবস্থা সম্পর্কে তথ্য সরবরাহ করে:
#/ইত্যাদি/init.d/procps পুনরায় আরম্ভপ্রায় 2015 সালে ফাইলের নামটি 'procps.sh' থেকে 'procps' এ সংক্ষিপ্ত করা হয়েছিল। সুতরাং, বয়স্ক ডেবিয়ান সিস্টেমে আপনাকে যে স্ক্রিপ্টটি আহ্বান করতে হবে তার নাম দেওয়া হয়েছে `procps.sh`, পরিবর্তে।
Systemd সঙ্গে ডিলিং
পরবর্তী বাধা Systemd সংস্করণ 221 রিলিজের সাথে এসেছিল। যদি এটি এখনও সেখানে না থাকে তবে কেবল এটি যোগ করুন। ফাইলের নামটি নেটওয়ার্ক ইন্টারফেসের নাম ধারণ করে যার পরে প্রত্যয় `.network`, উদাহরণস্বরূপ` eth0.network` নেটওয়ার্ক ইন্টারফেসের জন্য `/dev/eth0`। ডকুমেন্টেশনে বর্ণিত [4] হিসাবে, অন্যান্য এক্সটেনশন উপেক্ষা করা হয়।
নিম্নলিখিত কোড স্নিপেট নেটওয়ার্ক ইন্টারফেস `/dev/tun0` এর জন্য সেটআপ দেখায়। এতে দুটি বিভাগ রয়েছে - `ম্যাচ` এবং` নেটওয়ার্ক`। ম্যাচ বিভাগে নেটওয়ার্ক ইন্টারফেসের নাম সংজ্ঞায়িত করুন এবং নেটওয়ার্ক বিভাগে আইপি ফরওয়ার্ডিং সক্ষম করুন।
# cat /etc/systemd/network/tun0.network[ম্যাচ]
নাম= tun0
[অন্তর্জাল]
আইপি ফরওয়ার্ড= ipv4
উপসংহার
আইপিভি 4 এর জন্য আইপি ফরওয়ার্ডিং সক্রিয় করা কোনও রহস্য নয়। মাত্র কয়েক ধাপ, এবং আপনি সেখানে আছেন। শুভ হ্যাকিং!
লিঙ্ক এবং রেফারেন্স
* [1] Systemd-Networkd, ডেবিয়ান উইকি সেট আপ করা
* [2] Juergen Haas: Linux sysctl কমান্ড শিখুন
* [3] সংস্করণ 221 এর জন্য সিস্টেমড নিউজ
* [4] Systemd এর জন্য ডকুমেন্টেশন