/ 12 / হোস্টগুলিতে '127.0.0.1 লোকালহস্ট myhost.example.org মাইহোস্ট' এর মতো একটি এন্ট্রি থাকা উচিত?


16

বিভিন্ন লিনাক্স এবং ফ্রিবিএসডি সিস্টেমগুলির দিকে তাকানোর সময়, আমি লক্ষ্য করেছি যে কয়েকটি সিস্টেমে /etc/hostsহোস্টের সর্বজনীন হোস্টনামের জন্য একটি প্রবেশিকা রয়েছে, তবে অন্য সিস্টেমস্টে নয়।

এখানে সেরা অনুশীলন কি? আমার / ইত্যাদি / হোস্ট ফাইলগুলিতে হোস্টস এফকিউডিএন (উদাহরণস্বরূপ myhost.example.org) এবং সংক্ষিপ্ত হোস্টনামের (যেমন মাইহোস্ট) জন্য একটি এন্ট্রি থাকা উচিত? এফকিউডিএন-র রেকর্ডটি কি লোকালহোস্টের দিকে নির্দেশ করা উচিত বা এটি বাক্সের বহিরাগত আইপিকে নির্দেশ করা উচিত?

উদাহরণস্বরূপ, অনেকগুলি RHEL / EL বাক্সে ডিফল্ট কনফিগারেশন সর্বজনীন হোস্টনামটিকে এতে রাখে না /etc/hosts:

myhost # cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
myhost #

অন্য রূপটি হ'ল হোস্টের সংক্ষিপ্ত হোস্টনাম এবং এফকিউডিএন 127.0.0.1 এও নির্দেশ করে। আমাকে বলা হয়েছে যে এটি একটি পুরানো অনুশীলন যা এই দিনগুলিতে উদ্ভাসিত, তবে প্রচুর প্রশাসক এখনও এটি করে থাকেন।

myhost # cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 myhost myhost.example.org
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
myhost #    

তৃতীয় রূপটি হ'ল হোস্টের এফকিউডিএন এবং সংক্ষিপ্ত হোস্টনামকে হোস্টের বাহ্যিক আইপি ঠিকানা দেওয়া হয়। এই তৃতীয় রূপটি আমার কাছে অনুকূল বলে মনে হচ্ছে কারণ এটি ডিএনএস সার্ভারের বিরুদ্ধে লুকোচুরি হ্রাস করে।

myhost # cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
74.125.239.xxx myhost myhost.example.org
myhost #  

এখানে সেরা অনুশীলন কি?


2
প্রোগ্রামগুলি কী কী উপাধি ব্যবহার করে তা সেটিকে ফুটে উঠেছে (প্রাক্তন মাইএসকিএল পছন্দ করে / একটি 'লোকালহোস্ট' ওরফে থাকা প্রয়োজন), 127.0.0.1 localhost myhostযথেষ্ট হওয়া উচিত এবং 74.125.239.xxx myhost myhost.example.orgআপনি যেমন বলেছিলেন ডিএনএসের চেহারা আপগুলি সংরক্ষণ করে। "সেরা অনুশীলন" যদি না থাকে তবে এটি "জ্ঞানী ব্যক্তিরা কী ব্যবহার করেন" এর মান নেই।
লিনাক্সডেভিপস

উত্তর:


12

আপনি কি ডিএনএসকে আপনার পরিবেশে ব্যর্থতার একটি বিন্দু হিসাবে গ্রহণ করতে ইচ্ছুক? যদি কোনও সিস্টেম স্থানীয় মেশিনের নামটি সমাধান না করতে পারে তবে কয়েকটি পরিষেবা / অ্যাপ্লিকেশনগুলি নির্দিষ্ট কনফিগারেশনে ব্যর্থ হবে।

আপনার যদি একেবারে সমালোচনামূলক পরিষেবা থাকে যা অবশ্যই সব পরিস্থিতিতে চলমান থাকে, হোস্ট ফাইলটিতে একটি এন্ট্রি যুক্ত করা অস্বাভাবিক নয় যাতে DNS রেজোলিউশন ব্যর্থ হয় এমন পরিস্থিতিতে পরিষেবাটি চালিয়ে যেতে পারে।

যদি আপনি আপনার ডিএনএসকে ব্যর্থতার পয়েন্ট হিসাবে গ্রহণ করতে পারেন, বা ভাঙ্গা রেজোলিউশনের ক্ষেত্রে যদি আপনার পরিষেবাগুলি ব্যর্থ না হয় তবে হোস্ট ফাইলটিতে কনফিগারেশন এন্ট্রিগুলি এড়ানো যেতে পারে।

আমি দৃ strongly়ভাবে পরামর্শ দিচ্ছি যে আপনি আপনার ডিএনএস সার্ভারগুলিকে যথাসম্ভব শক্তিশালী হিসাবে শক্ত করে তুলুন এবং আপনার হোস্ট ফাইলটি কনফিগার করতে হলে এটি করার জন্য একটি কনফিগারেশন ম্যানেজমেন্ট সিস্টেম ব্যবহার করুন। আপনার হোস্ট ফাইলের স্পর্শটি নিজেই এড়ানো উচিত।


13
কেবল এটি যুক্ত করার জন্য, বেশিরভাগ ক্ষেত্রে /etc/hostsডিএনএসকে ছাড়িয়ে যাবে, ডিএনএসের ব্যর্থতার ক্ষেত্রে ফ্যালব্যাক হিসাবে ব্যবহৃত হবে না। এটি আমার মনে হয় একটি পার্থক্য। (নিট-পিক করার চেষ্টা করছেন না)) এটি সমস্তই সংজ্ঞায়িত ক্রমের উপর নির্ভর করে /etc/nsswitch.conf
অ্যারন

4
অন্য সমস্যাটি হ'ল ডিএনএস সার্ভারগুলি জিজ্ঞাসা করা /etc/hostsফাইলের সাথে পরামর্শের পরে অনেক ধীর । অনেক অ্যাপ্লিকেশন প্রতি সেকেন্ডে একাধিক বার তাদের হোস্টনামটি বার বার জিজ্ঞাসা করে। হোস্টনামটি যুক্ত করা /etc/hostsবিলম্বিতা হ্রাস করবে এবং অ্যাপ্লিকেশনটি দ্রুত করা উচিত।
স্টিফান লাসিউইস্কি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.