Hosts

در یک سیستم‌عامل، hosts فایلی است که اسم میزبان‌ها را به آدرس‌های IP می‌نگارد. فایل میزبان یک فایل متنی ساده است.

هدف

فایل میزبان یکی از انواع امکانات سیستم‌ها است که در آدرس دهی گره‌های شبکه در شبکه‌های کامپیوتری کمک می‌کند. بخشی که در اسلوب پروتکل اینترنت (IP) سیستم‌های عامل مشترک است، و وظیفه ترجمه اسامی کاربرپسند گره‌ها (مثل www.host.com) را به آدرس‌های پروتکلی عددی (مثل xx.xx.xx.xx که هر x یک عدد مبنای ۱۶ به نام نشانی IP است) انجام می‌دهد. نقش نشانی IP تشخیص و تعیین محل یک میزبان در یک شبکه IP است.
در برخی از سیستم‌های عامل محتویات فایل میزبان بیش از سایر روش‌ها، از جمله سامانه نام دامنه (DNS)، ترجیح داده می‌شود. اما در بسیاری از سیستم‌ها به منظور سفارشی کردن این خدمات، سوئیچ خدمات نام پیاده‌سازی می‌شود (به عنوان مثال، Nsswitch.conf). بر خلاف سامانه نام دامنه (DNS)، فایل میزبان را می‌توان تحت نظارت مستقیم مدیر کامپیوترهای محلی ایجاد کرد.

محتویات فایل

فایل میزبان حاوی خطوطی متنی است که در قسمت اول یک نشانی IP و پس از آن یک یا چند نام گره آورده می‌شود. هر یک از قسمت‌ها با استفاده از فاصله سفید (خالی یا کاراکترهای جدول بندی) از بقیه قسمت‌ها جدا شده‌است. ممکن است خطوطی جهت توضیحات اضافه شوند، که بدین جهت یک نشانه شارپ (#) در اول خطوط آورده می‌شود. خطوط کاملاً خالی در پرونده نادیده گرفته می‌شوند. به عنوان مثال، ممکن است یک فایل میزبان معمولی به شرح زیر باشد:
This is an example of the hosts file #
127.0.0.1localhost loopback
1localhost::
نکته: باید بین اعداد و کلمهٔ "localhost" یک " " (فاصله باشد) اما به‌دلیل محدودیت ویکی این امکان وجود نداشت!
قالب:
از چپ به راست
آدرس + رقم (آی پی)
این مثال فقط شامل مطالبی جهت آدرس loopback سیستم و نام گره‌های خودی است. مثال قبل محتوای پیش‌فرض فایل میزبان است. مثال نشان می‌دهد که نشانی IP ممکن است نام‌های میزبان متعددی داشته باشند و همچنین یک نام میزبان ممکن است به چندین نشانی IP نگاشته شود.

History

en:ARPANET، که پیشتر از اینترنت حضور داشت، هیچ پایگاه نام میزبانی نداشت. در صورتی که به یک گره احتیاج بود، جای آن در شبکه را مشخص بود و یک نام که توسط افراد مربوطه قابل حفظ و یادآوری بود به آن اطلاق می‌کردند. هیچ روشی برای تضمین این که همه ارجاع‌ها به یک گره در شبکه با استفاده از نام یکسان انجام می‌شد وجود نداشت. همچنین راهی برای خواندن فایل میزبان از یک کامپیوتر دیگر و ایجاد یک رونوشت از روی آن شناخته شده نبود.
اندازه کوچک ARPANET بار اداره کوچکی برای مدیران سیستم شبکه داشت و نیازی به نگهداری یک فایل میزبان دقیق نبود. گره‌های شبکه به‌طور معمول یک آدرس داشته و در عین حال می‌توانستند نام‌های بسیاری داشته باشند؛ ولی، به محض این که شبکه‌های رایانه‌ای TCP/IP محلی محبوبیت به دست آورد و با افزایش تعداد سیستم به شبکه، نگهداری فایل‌های میزبان بار فزاینده‌ای بر دوش مدیران سیستم بیشتر می‌شد.
تلاش‌های برای استاندارد کردن این موضوع، از قبیل مشخصات فرمت فایل HOSTS.TXT در RFC 952، و پروتکل‌های توزیع، به عنوان مثال سرور نام میزبان شرح داده شده در RFC 953، کمک کرد تا این مشکلات رفع شوند. اما ماهیت متمرکز و یکپارچه فایل‌های میزبان در نهایت ایجاد توزیع سامانه نام دامنه را ضروری کرد.

امنیت

به دلیل نقش این فایل در بازشناسی نام محلی، فایل میزبان یک هدف مناسب برای حمله توسط نرم‌افزارهای مخرب است. این فایل ممکن است توسط تبلیغات آلوده، ویروس‌های رایانه‌ای، و اسب تروا «ربوده شود». می‌توان این فایل را به گونه تغییر داد تا ترافیک شبکه را به میزبان‌هایی که شامل محتویات توهین‌آمیز یا فضول (که اطلاعات شما را بررسی و ضبط می‌کنند) هدایت کند. کرم رایانه‌ای Mydoom.B که گستردگی زیادی داشت، کابران را از دسترسی یه تارنماهایی که دارای محتویات در رابطه با امنیت رایانه‌ای و ضدویروس رایانه‌ای بودند و همچنین از مراجعه به Windows_Update منع می‌کرد.
تغییر مسیر از تارنماهای دارای محتویات نامناسب به آدرس (۱۲۷٫۰٫۰٫۱) دارای ریسک امنیتی است.