এই পোস্টে আমরা লিনাক্সের নেটওয়ার্কিং সম্পর্কিত কিছু কমান্ড শিখবো যেগুলো প্রতিনিয়ত আমাদের দরকার হয়। NIC Card, IP Address, MAC Address, IPv6 Address, Link Local Address, Gateway, Route, DNS, IP Configure সহ অনেক বিষয় তুলে ধরা হয়েছে। আর মজার বিষয় হলো এই কমান্ডগুলো অধিকাংশ লিনাক্স ডিস্ট্রিবিউশনে কাজ করবে। এই পোস্টে নেটওয়ার্ক সম্পর্কিত দুই (০২) ধরণের কমান্ড নিয়ে আলোচনা করা হবে। যারা লিনাক্সে নতুন তাদের জন্য এই পোষ্টটি খুবই উপকারী বলে আমি মনে করি।
➡ 1. লিনাক্স সিস্টেমে নেটওয়ার্ক ইন্টারফেসের (NIC) লিস্ট জানতে চাইলে নিচের দুইটা কমান্ডঃ
[root@desktop ~]# ifconfig -a
[root@desktop ~]# ip link
নোটঃ ‘ifconfig’ অনেক ডিস্ট্রিবিউশনে কাজ করবে না সেক্ষেত্রে ‘net-tools’ নামক প্যাকেজ ইন্সটল করে নিতে হবে।
➡ 2. লিনাক্সে Active নেটওয়ার্ক কার্ডের IP এবং MAC Address দেখার জন্য নিচের কমান্ডঃ
[root@desktop ~]# ifconfig
➡ 3. লিনাক্সে নির্দিষ্ট কোনও নেটওয়ার্ক কার্ডের IP অথবা MAC এড্রেস জানার জন্য নিচের কমান্ডঃ
[root@desktop ~]# ifconfig ens160

নোটঃ উপরে ‘ifconfig ens160’ ব্যবহার করে নেটওয়ার্ক কার্ডের ইনফরেমশন বের করা হয়েছে। নেটওয়ার্ক কার্ডের নাম হলো ‘ens160’ এবং ‘inet’ এর অর্থ হচ্ছে IPv4 Address এবং Inet6 এর অর্থ হচ্ছে IPv6 Address, পাশাপাশি ‘ether’ অর্থ Ethernet (MAC) অ্যাড্রেস।
➡ 4. লিনাক্সে অস্থায়ী ভাবে IP Address সেট করার জন্য নিচের কমান্ডটি দিতে পারিঃ
[root@desktop ~]# ifconfig ens160 192.168.11.254
[root@desktop ~]# ifconfig ens160 192.168.11.254 netmask 255.255.255.0
নোটঃ সিস্টেমে অস্থায়ী আইপি অ্যাড্রেস সেট করার জন্য উপরের কমান্ড ব্যবহার করা যেতে পারে। প্রথম কমান্ডে আইপি অ্যাড্রেসের সাথে ডিফল্ট Subnet Mask নিয়ে নিবে। আর যদি Subnet Mask উল্লেখ করতে চাই, তাহলে দ্বিতীয় কমান্ডের মতো উল্লেখ করতে হবে। নেটওয়ার্ক ইন্টারফেস হিসেবে ‘ens160’ ব্যবহার হয়েছে।
➡ 5. লিনাক্সে নেটওয়ার্ক কার্ড Disable/enable করার জন্য নিচের কমান্ডঃ
[root@desktop ~]# ifdown ens160 (disable)
[root@desktop ~]# ifup ens160 (enable)
➡ 6. লিনাক্সে একটা ইন্টারফেসে একাধিক IP Address সেট করার জন্য নিচের কমান্ডঃ
[root@desktop ~]# ip addr add 192.168.11.252/24 dev ens160
[root@desktop ~]# ip addr add 192.168.11.253/24 dev ens160
[root@desktop ~]# ip addr add 192.168.11.254/24 dev ens160
নোটঃ উপরের কমান্ডে একটি ইন্টারফেসে অস্থায়ী পদ্ধতিতে একাধিক আইপি অ্যাড্রেস বসানো হয়েছে, এক্ষেত্রে সিস্টেম Restart দিলে চলে যাবে।
➡ 7. লিনাক্সে একাধিক ভার্চুয়াল ইন্টারফেস তৈরী এবং আইপি অ্যাড্রেস (IPv4) সেট করার জন্য নিচের কমান্ডঃ
[root@desktop ~]# ifconfig ens192:1 192.168.11.151/24
[root@desktop ~]# ifconfig ens192:2 192.168.11.152/24
[root@desktop ~]# ifconfig ens192:3 192.168.11.153/24

নোটঃ উপরের কমান্ডে ‘ens192’ ইন্টারফেসের (MAC) ব্যবহার করে তিনটি (০৩) ভার্চুয়াল ইন্টারফেস (ens192:1, ens192:2, ens192:3) তৈরি করা হয়েছে। অর্থাৎ তিনটি (০৩) ইন্টারফেসের MAC Address একই দেখাবে মূল ইন্টারফেস ‘ens192’ থেকে। সিস্টেম Restart দিলে আইপি (IP Address) চলে যাবে। এটা চাইলে স্থায়ী ভাবে করা যাবে। IP based ভার্চুয়াল হোস্টিং এর কাজে ব্যবহার হয়।
➡ 8. লিনাক্সে রাউটিং টেবিল দেখার জন্য নিচের কমান্ডঃ
[root@desktop ~]# route -n

নোটঃ সিস্টেমে আইপি অ্যাড্রেস না থাকলে কোনও রাউট টেবিল আসবে না। আবার সিস্টেমে একাধিক নেটওয়ার্ক/ইন্টারফেস থাকলে ডিফল্ট গেটওয়ে সবার উপরে থাকবে।
➡ 9. লিনাক্সে ডিফল্ট গেটওয়ে Add করার জন্য নিচের কমান্ডঃ
[root@desktop ~]# route add default gw 192.168.11.254
[root@desktop ~]# route add default gw 192.168.11.254 ens160
নোটঃ উপরের দ্বিতীয় কমান্ডের শেষে ইন্টারফেস হিসেবে ‘ens160’ দেখানো হয়েছে। অর্থাৎ নির্দিষ্ট কোনও ইন্টারফেস দিয়ে রাউট দিতে চাইলে সেই ইন্টারফেসের নাম উল্লেখ করতে হবে।
➡ 10. লিনাক্সে ডিফল্ট গেটওয়ে ডিলিট (Delete) করার জন্য নিচের কমান্ডঃ
[root@desktop ~]# route del default gw 192.168.11.254
[root@desktop ~]# route del default gw 192.168.11.254 ens160
নোটঃ কোনও নির্দিষ্ট ইন্টারফেস থেকে ডিফল্ট গেটওয়ে ডিলিট করার জন্য কমান্ডের সাথে ইন্টারফেসের নাম উল্লেখ করতে হবে। উপরের দ্বিতীয় কমান্ডের শেষে ইন্টারফেস হিসেবে ‘ens160’ দেখানো হয়েছে।
➡ 11. লিনাক্সে static route add/delete করার জন্য নিচের কমান্ডঃ
[root@desktop ~]# ip route add 172.24.16.0/24 via 192.168.12.2 dev ens160
[root@desktop ~]# ip route del 172.24.16.0/24
নোটঃ উপরের কমান্ডে নির্দিষ্ট ইন্টারফেস ‘ens160’ দিয়ে এবং নেক্সট গেটওয়ে (Hop) 192.168.12.2 হয়ে রাউট যোগ করা হয়েছে।
