فهرست محتوا
شبکههای کامپیوتری و کارکرد سیستمها در آنها
در همین لحظه که شما در حال مطالعه این مقاله هستید دانسته یا نادانسته درگیر استفاده از یک شبکهی کامپیوتری شدهاید. سیستمی که شما برای دسترسی به این سایت از آن استفاده کردهاید اکنون به یک مودم متصل شده است و این خود شما را به خط ISP یا همان سرویسدهنده اینترنتی متصل کرده است. این سرویسدهنده شما را به شبکهی جهانی اینترنت و سرورهای مارال هاست متصل کرده و اطلاعات از طریق همین مسیر برای شما ارسال شده و شما میتوانید این متن را بخوانید. در صورتی که از موبایل هم استفاده کنید همین اتفاق برای شما افتاده است و این دسترسیها برای شما ایجاد شده است.
نکته مهمی که در اینجا میتواند توجه ما را به خود جلب کند این است که چطور امکان دارد در بین هزاران سایت اینترنتی و میلیونها کاربری که از آنها استفاده میکنند اطلاعاتی که شما درخواست کردهاید درست و منظم در اختیار شما قرار بگیرد و در این میان اشتباهی سایت یک نفر دیگر را به شما ارائه نکند؟!
جواب این سوال را باید از پروتکل اینترنت یا همان TCP/IP بپرسیم که مسئولیت این کار را بر عهده دارد. روشی که این پروتکل برای ارسال اطلاعات از آن استفاده میکند این است که هر موجودیتی در اینترنت که میخواهد از آن استفاده کند، فرقی نمیکند که یک سایت باشد، یک کاربر باشد، یک ربات باشد یا هر سرویس دیگری در سطح اینترنت، باید برای خود یک شناسه به نام IP داشته باشد. وقتی که شما بخواهید به سایت متصل شوید و اطلاعاتی برای شما ارسال شود، اطلاعاتی از IP شما به IP سایت ارسال شده و سایت هم درخواست این IP وارده را بررسی کرده و اطلاعات مورد نیاز را برای آن باز میگرداند. اینگونه است که اینترنت میتواند کارها را درست و منظم انجام دهد.
علاوه بر اینترنت تمامی شبکههای محلی که برای کاربردهای مختلف از آنها استفاده میشود هم همین روند را در پیش گرفتهاند و سیستمها در این شبکهها هم از همین مکانیزم برای ارتباط گرفتن با هم استفاده میکنند. البته باید گفت که رنج و نوع IPهای مورد استفاده کمی متفاوت خواهد بود. اساس کار اینترنت استفاده از نوعی IP به نام IPv4 است که از یک عدد 4 بخشی که با نقطه (.) از هم جدا میشوند تشکیل شده است. هر کدام از این بخشهای عددی میتواند از 0 تا 255 متفاوت باشد. به طور مثال 8.8.8.8 یک IP است که مربوط به گوگل میباشد.
در شبکههای محلی عموما رنج این IPها متفاوت بوده و بهصورت (۱۹۲.۱۶۸x.x) ارائه میشود که در آن اعداد x هر کدام یک عدد از صفر تا 256 میباشند. اگر دقت کرده باشید ip ای که برای دسترسی به مودم استفاده میشود یعنی 192.168.0.0 یکی از همین IPهای محلی یا لوکال است. اما در مورد اینکه در این میان جایگاه Hostname چیست باید گفت که «هاست نیم» یکی از ابزارهایی است که تشخیص ما از این IPها را سادهتر میکند.
Hostname چیست؟
همانطور که دیدیم هر سیستم در هر شبکهای برای خود یک شناسه IP دارد و کار اصلی این شناسه این است که اطلاعات را به درستی انتقال دهد. اما به این موضوع فکر کردهاید که اگر در صورتی که ما بخواهیم از این IPها برای ارتباط با کامپیوترها استفاده کنیم وضعیت اینترنت و شبکههای محلی به چه صورتی در می آید؟!
در این حالت همه ما باید یک کتاب بزرگ مانند دفتر تلفن همراه خود داشته باشیم که این اطلاعات را در آنها وارد کنیم و هر بار که میخواهیم به سایتی دسترسی پیدا کنیم و یا برای سیستمی دادهای را ارسال کنیم از آن استفاده کنیم. همین مورد میتواند تجربه کاربری را به صفر برساند و در واقع باید گفت که در زمان شروع به کار شبکهها این اتفاق هم برای سیستمهای کامپیوتری افتاد. اینجا بود که دانشمندان به فکر ارائه قابلیتی افتادند که بتواند یک نام قابل درک و منطقی را برای یک نود (Node) شبکه ایجاد کند که معنی همان IP را بدهد.
اینجا نقطهای بود که Hostname اختراع شد و مورد استفاده قرار گرفت. در واقع در رابطه با اینکه Hostname چیست باید گفت که Hostname نامی است که میتواند کار IP را برای ما انجام دهد و در واقع نام مستعاری برای یک سیستم در شبکه میباشد که توسط ما قابل درک بوده و میتوانیم به راحتی از آن استفاده کنیم.
ساختار Hostname چیست؟
هر چند که Hostnameها یک نام قراردادی و قابل درک برای یک IP میباشد ولی باید گفت که همین نام هم قاعده و قانون خود را دارد. در مورد اینکه ساختار Hostname چیست باید گفت «هاست نیمها» نامهایی سلسله مراتبی هستند که دقیقا مانند IPها با نقطه از هم جدا میشوند، اما باید در نظر داشت که مانند IPv4 به صورت قطعی 4 بخش ندارند و میتوانند از 2 تا چندین بخش تشکیل شده باشند.
در مورد اینکه هر کدام از این بخشها چه ویژگیهای متنی و ساختاری میتوانند داشته باشند باید گفت که شما میتوانید از حروف a تا z و همینطور اعداد 0 تا 9 و کاراکتر خط فاصله (-) را در Hostname استفاده کنید. علاوه بر این باید توجه داشته باشید هر کدام از بخشهایی که با استفاده از نقطه از سایر بخشها جدا میشوند میتوانند بهاندازه 63 کاراکتر اسکی اندازه داشته باشند و بیش از این امکانپذیر نخواهد بود.
کاربرد Hostname چیست؟
اکنون ما به صورت دقیق متوجه این موضوع شدهایم که Hostname چیست و قرار است که چه کارهایی را برای ما انجام دهد. در واقع در مورد اینکه کاربرد اصلی Hostname چیست باید گفت که امکان استفاده و درک ما از اینترنت و سیستمهایی که در شبکهها وجود دارند را سادهتر کرده و ما میتوانیم بهراحتی از آنها استفاده کنیم. اما زمینههای مختلفی وجود دارد که میتوان از Hostname در آنها استفاده کرد و بعضی از آنها به صورت ناشناخته بوده و بعضی دیگر کاملا ملموس خواهند بود.
در صورتی که بخواهیم مهمترین کاربردی که Hostname برای ما پیادهسازی کرده است و همه از آن استفاده کردهایم را معرفی کنیم، دامنههای سایتهای اینترنتی هستند که دقیقا زیر مجموعهای از Hostnameها میباشند. در صورتی که به یک آدرس اینترنتی مانند maralhost.com دقت کنید، متوجه خواهید شد که از چند بخش جدا شده با نقطه تشکیل شده است و کاری که انجام میدهد این است که آدرس یک IP را باز میگرداند.
در صورتی که سوالی در مورد دامنه، هاست و دامین داشتید میتوانید به سراغ مقالههای دامنه چیست و هاست و دامین چیست بروید و به اطلاعات کاملی در این خصوص دسترسی داشته باشید.
پس دیدید که ما سایتهای اینترنتی را با استفاده از «هاست نیمهای» آنها پیدا میکنیم، اما این سوال که آیا سایتهای اینترنتی هم «هاست نیم» ما را میبینند و ما را به این صورت مشاهده میکنند پاسخی به نسبت طولانی دارد که در بخش بعد آن را با هم دنبال خواهیم کرد.
Hostname من چیست؟!
این سوالی است که ممکن است برای خیلی از شما پیش آمده باشد که وقتی که شما یک هاست نیم دارید از کجا میتوانید آن را بررسی کنید. جواب این سوال بستگی به این دارد که با چه سیستمی به آن متصل شده باشید و منظور شما از Hostname من چه هاست نیمی باشد.
در صورتی که شما یک سایت داشته باشید، هاست نیم سایت شما که روی هاست بارگذاری شده و در اختیار کاربران قرار دارد، دامنهی سایت شما خواهد بود و در مورد آن در بخشهای قبلی صحبت کردیم. همینطور در صورتی که یک سرور اختصاصی و یا سرور مجازی داشته باشید که به صورت فعال در اینترنت کار میکند، سرور شما هاست نیم خود را دارد که میتواند در ارتباطات مختلف مانند برقراری ارتباط شبکه و پایگاه داده بسیار موثر باشد. علاوه بر اینها در صورتی که با یک سیستم عادی به شبکه خانگی و مودم خود متصل شده باشید هم باز همین داستان وجود دارد و شما باید یک هاست نیم داشته باشید.
در ادامه در مورد اینکه روش دستیابی به هر کدام از انواع Hostname چیست صحبت خواهیم کرد.
Hostname در سرورها
تقریبا میتوان گفت یکی از المانهای حساس از نظر کاراییای که سرورها دارند Hostname میباشد. در صورتی که بخواهیم بگوییم برای یک سرور کارایی Hostname چیست باید گفت که سرورها با استفاده از این نام میتوانند منابع مختلف خود را مدیریت کنند. به نوعی باید گفت که Hostnameها یک نام مستعار برای سرور هستند که نه تنها ما برای شفافیت نام در برابر IPها و شمارهها از آن استفاده میکنیم، بلکه خیلی از المانهای نرمافزاری هم تنظیمات خود را با آن پیادهسازی کرده و از آن استفاده میکنند. یکی از موارد مهمی که Hostname در آن به صورت گسترده استفاده میشود سیستمهای پایگاه داده شبکهای یا همان کلاسترها هستند (جهت اطلاعات بیشتر به مقاله کلاستر چیست مراجعه کنید).
وقتی که شما میخواهید دادههایی را در سطح شبکه جابهجا کنید این Hostname سیستم میباشد که این کار را انجام میدهد در واقع باید گفت که Hostnameها هستند که تعیین میکنند صاحب این دادهها کیست و چه اجازهها یا Permissionهایی روی این دادهها دارد. پس از خرید سرور مجازی و در بستر یک دیتاسنتر انجام میدهید، Hostname میتواند نقش بسیار مهمی را در این میان ایفا کند.
اما در مورد تعیین Hostname و اینکه در یک سرور چطور میتوان به آن دسترسی داشت باید گفت که این موضوع کاملا بستگی به سیستم عامل شما دارد. در سرورهای لینوکسی شما میتوانید با استفاده از وارد کردن عبارت «Hostname» در ترمینال، Hostname خود را مشاهده کنید.
همینطور در صورتی که از سیستم عامل ویندوز برای سرور خود استفاده میکنید، با مراجعه به Dashboard در ویندوز سرور و کلیک روی Configure This Server میتوانید به اطلاعات کلی سیستم دسترسی داشته باشید که در اولین گزینهها به شما Computer Name و Workgroup ارائه میشود. Computer Name شما همان Hostname شما است که روی شبکهای که در Workgroup ارائه شده است در اختیار شما قرار میگیرد.
Hostname در سرور مجازی
در مورد سرورهای مجازی هم باید گفت که شما میتوانید به Hostname از طریق همین روشها دسترسی داشته باشید. در واقع باید گفت که Hostname در سرور مجازی هم همان نام سیستم مورد استفاده میباشد. با این تفاوت که شما میتوانید از روش دیگری هم به آن دسترسی داشته باشید. در صورتی که شما یک کنترل پنل برای سرور مجازی خود داشته باشید، میتوانید در مشخصاتی که کنترل پنل به شما میدهد هاست نیم خود را پیدا کرده و آن را مشاهده کنید.
اما در صورتی که به این کنترل پنل دسترسی نداشته باشید، همواره میتوانید از طریق وارد کردن Hostname در ترمینال سرور مجازی لینوکس خود، و همینطور بخش Configuration در داشبورد ویندوز سرور خود به این اطلاعات دسترسی داشته باشید.
Hostname در سیستمهای شخصی
در سیستمهای شخصی هم دقیقا مانند سرورها برای موارد مختلفی از هاست نیم استفاده میشود و باید گفت که این نوع از Hostname هم یکی از موارد مهم برای سیستم به شمار میرود. در صورتی که این سوال برای شما ایجاد شده است که Hostname به چه درد سیستمهای شخصی میخورد و کاربرد Hostname چیست باید گفت که این ویژگی به سیستمهای شخصی کمک میکنند که به راحتی از شبکه استفاده کند.
در واقع Hostname در سیستمهای شخصی پوششی میباشد که IPهای لوکال را کنترل کرده و هر سیستمی با استفاده از Hostname خود یک IP لوکال از شبکههایی که در آنها عضو است دریافت میکند. سیستمهای شخصی عموما در شبکههای کوچکتری مانند ارتباط بین مودم و سیستم قرار میگیرند. در کمترین حالت شما سیستم خود را به یک مودم متصل میکنید که همین مودم به شما یک IP لوکال را میدهد.
در خیلی از موارد ما به دنبال این هستیم که Hostname را روی سیستمی که خودمان از آن استفاده میکنیم پیدا کنیم. برای این کار میتوانید بهراحتی به سراغ CMD در ویندوز خود رفته و دستور Hostname را در آن تایپ کنید و اینتر را بزنید و Hostname خود که در واقع همان نام سیستم عامل شما هم هست را پیدا کنید. همینطور شما میتوانید با راست کلیک بر روی آیکون This PC و انتخاب گزینهی Properties به Hostname سیستم شخصی خود دسترسی داشته باشید.
اکنون که میدانیم Hostname چیست و چه کاربردی دارد وقت آن رسیده است که علت و روشهای تغییر آن را با هم بررسی کنیم و ببینیم.
روش تغییر Hostname چیست
قبل از اینکه به روشهای تغییر دادن Hostname بپردازیم باید این موضوع که علت تغییر Hostname چیست را هم کمی بررسی کنیم. همانطور که دیدیم Hostname نامی است که کامپیوتر شما در شبکههای مختلف، چه شبکهی جهانی اینترنت و چه شبکههای داخلی با آن شناخته میشود و باید گفت که Hostnameها میتوانند برای مدیریت یک شبکه و سیستم بسیار مهم و کاربردی باشند. با تغییر این Hostnameها شما هم میتوانید شبکه داخلی خود را مدیریت کنید و هم در بسیاری از موارد میتوانید یک امنیت نسبی را برای این شبکه ایجاد نمایید که با تغییر آن خیلی از مسیرهایی که دستورات نادرست به سیستم وارد میشد تغییر کرده و حمله به این سرور به روشهای قبلی امکانپذیر نخواهد بود.
پس میتوان در پاسخ به اینکه دلیل تغییر Hostname چیست گفت که یکی از موارد مدیریتی برای سرورها و شبکهها میباشد که هر از گاهی لازم است انجام شود. اما در مورد این تغییر باید گفت که تغییر Hostnameها بسته به سیستم عاملی که روی کامپیوتر ما نصب است دارد.
در ادامه این موضوع را به صورت کامل روی دو سیستم عامل لینوکس و ویندوز بررسی میکنیم:
تغییر Hostname در ویندوز
برای این کار روی آیکون This PC راست کلیک کرده و گزینهی Properties را انتخاب کنید. سپس تصویر زیر برای شما نمایش داده خواهد شد که میتوانید اطلاعات مهم سیستم خود را در آن مشاهده کنید:
در اینجا شما باید از بخش سوم که Computer Name و Domain را به شما ارائه میکند گزینهی Change Settings که در سمت راست به شما نمایش داده میشود را انتخاب کنید تا پنجره تنظیمات برای شما باز شود:
در کادر Computer description شما میتوانید توضیحاتی را به این بخش اضافه کنید اما برای تغییر Hostname لازم است روی دکمه Change کلیک کنید تا این فرم به شما نمایش داده شود:
در کادر Computer name هاست نیم را تغییر دهید و روی OK کلیک کنید و تب قبلی را Apply نمایید تا Hostname شما به صورت کامل تغییر کند. در صورتی که این کار را روی سرور انجام دهید، امکان اینکه با مراحل کمتری مواجه باشید و در همان Properties هم این امکان به شما داده شود وجود دارد زیرا عموم سرورها از نسخههای پایدار ویندوز مانند Windows Server 2016 Datacenter Edition استفاده میکنند که در این مراحل سختگیریهای کمتری را دارند.
تغییر Hostname در لینوکس
در مورد اینکه در سیستمها و سرورهای لینوکسی روش تغییر Hostname چگونه است باید گفت که سیستم شما هم تاثیر زیادی در این تغییر دارد و روشهای این کار متعدد خواهد بود. در صورتی که شما یک سیستم شخصی لینوکسی دارید که میخواهید برای موردی خاص Hostname خود را تغییر دهید یا قصد دارید که این کار را روی سرور خود انجام دهید ولی نمیخواهید که این تغییر دائمی باشد، میتوانید از قالب دستور ساده زیر استفاده کنید:
hostname [options] [new_hostname]
که البته باید گفت Options در اینجا اختیاری میباشد و صرفا اگر شما عبارت Hostname را تایپ کرده و بعد از آن Hostname جدید خود را وارد کنید، میتوانید تغییر Hostname را به سادگی انجام دهید. به طور مثال دستور زیر میتواند New-hostname را جایگزین هاست نیم فعلی کند:
hostname New-hostname
در صورتی که این کار را روی سرورها انجام دهید، خصوصا اگر با یک سرور مجازی طرف باشید، بعد از ریست شدن سرور احتمال لغو شدن این دستور وجود دارد. برای اینکه این تغییر را تثبیت کنید لازم است فایلی که این داده را در خود نگه میدارد را هم تغییر داده و اصلاح کنید.
این موضوع که این فایلها در کجا قرار دارند میتواند بسته به اینکه از چه توزیعی از لینوکس استفاده میکنید متفاوت باشد. در صورتی که شما سرور خود را با استفاده از توزیع لینوکس CentOS که یکی از محبوبترین گزینهها برای سرور میباشد راهاندازی کردهاید، برای تغییر Hostname باید به سراغ مسیر زیر بروید:
/etc/sysconfig/network
در این فایل میتوانید اطلاعات مربوط به Hostname را پیدا کرده و آنها را تغییر دهید. در بخشی از این فایل مقداری بهصورت =HOSTNAME نوشته شده است که با تغییر هر آنچه که مقابل آن نوشته شده بود، Hostname شما هم تغییر پیدا میکند.
اما در صورتی که شما با یکی از سیستمهایی که بر پایه توزیع محبوب Debian ارائه شده است، مانند Ubuntu مواجه باشید، باید این مسیر را انتخاب کنید:
/etc/hostname
در این فایل میتوانید به تمامی موارد مورد نیاز برای تغییر Hostname دسترسی داشته باشید. همینطور در صورتی که شما از یک سرور مجازی دارای کنترل پنل استفاده میکنید، میتوانید از طریق کنترل پنلی که در اختیار شما قرار دارد Hostname خود را تغییر دهید، عموما Hostnameها بهصورت پیشفرض نام هاستینگ در نظر گرفته میشود.
نتیجهگیری
Hostnameها یکی از اعضای مهم در سیستم های کامپیوتری بوده که یک شفافیت بین آنچه که ما در شبکهها میبینیم و آنچه که واقعا اتفاق میافتد ایجاد کرده و در سرورها نقش مهمی را برای اتصال DNSها ایفا میکنند. در واقع باید گفت Hostname همان نامی است که ما یک سیستم را با آن صدا میزنیم و در صورت نیاز شما میتوانید با آموزشهای ارائه شده آن را تغییر دهید. در مورد اینکه کاربرد اصلی Hostname چیست و آیا فقط در سرورها مشاهده میشود باید گفت که اینطور نیست و تمامی سیستمها اعم از سیستمهای شخصی و سیستمهای مجازیسازی شده مانند سرور مجازی هم از این قابلیت استفاده میکنند.