সি প্রোগ্রামিং ভাষা ব্যবহার করে সিস্টেমের ইন্টারনেট সংযোগের বিবরণ বের করা যায়। প্রথমে কিছু বেসিক টার্ম জানতে হবে।
আইপি ঠিকানা (IP Address)
IP Address বা ইন্টারনেট প্রোটোকল ঠিকানা হলো প্রতিটি ডিভাইসের সাথে জড়িত একটি নির্দিষ্ট সংখ্যালোকন শনাক্তকারী। আইপি ঠিকানা দিয়ে আপনার ডিভাইস ইন্টারনেটের মাধ্যমে যোগাযোগ করে।
সাবনেট মাস্ক (Subnet Mask)
আইপি ঠিকানার ৩২-বিট একটি কম্পোনেন্ট। সাবনেট মাস্ক আইপি ঠিকানার নেটওয়ার্ক কম্পোনেন্টকে দুটি ভাগে ভাগ করে: নেটওয়ার্ক ঠিকানা এবং হোস্ট ঠিকানা। সাবনেট হলো নেটওয়ার্কের সাথে সংযুক্ত সাব-নেটওয়ার্কের নম্বর যা সিস্টেমের পূর্ণ আইপি ঠিকানা সম্পূর্ণ করে।
ডিফল্ট গেটওয়ে (Default Gateway)
এটি একটি কম্পিউটারের অ্যাক্সেস পয়েন্ট বা আইপি রাউটার যা নেটওয়ার্কের সাথে সংযুক্ত। এই ডিফল্ট গেটওয়েটি কম্পিউটার দ্বারা ডিফল্টভাবে সংজ্ঞায়িত হয় যতক্ষণ না কোনো অন্য অ্যাপ্লিকেশন অন্য গেটওয়ে ব্যবহার করে। এটি সিস্টেমের নেটওয়ার্ককে ইন্টারনেটের বাকি অংশের সাথে সংযুক্ত করে। এই নেটওয়ার্ক ব্যর্থ হলে সাব-নেটওয়ার্ক ইন্টারনেট থেকে ডিসকানেক্ট হয়ে যেতে পারে।
সি প্রোগ্রামিং-এ সিস্টেমের আইপি ডিটেইলস বের করার দুটি পদ্ধতি রয়েছে:
- সিস্টেম কমান্ড (System command)
- এক্সেল কমান্ড (Execl command)
সিস্টেম কমান্ড
সি প্রোগ্রামিং-এ stdlib লাইব্রেরিতে system() ফাংশন রয়েছে যা ipconfig ব্যবহার করে সিস্টেমের আইপি কনফিগারেশন অ্যাক্সেস করতে পারে। ফাংশন কলটিতে ipconfig ফাইলের পুরো পাথ পাস করতে হয়।
উদাহরণ
#include <stdio.h>
#include <stdlib.h>
int main() {
system("c:\\windows\\system32\\ipconfig");
return 0;
}
এক্সেল কমান্ড (Execl Command)
সিস্টেমের আইপি ডিটেইলস বের করার আরেকটি উপায় হলো execl() ফাংশন ব্যবহার করা। এই ফাংশনে একাধিক প্যারামিটার দরকার হয়।
উদাহরণ
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main() {
execl("c:\\windows\\system32\\ipconfig", "ipconfig", 0);
return 0;
}
এই কোডগুলোর আউটপুট সিস্টেমের ওপর নির্ভর করে। একটি সিস্টেমের আইপি ডিটেইলস গোপনীয়, তাই আউটপুট এখানে দেখানো হয়নি। আপনি কোডটি আপনার সিস্টেমে রান করে ডিটেইলস দেখতে পারেন।