ওএসএক্স মাউন্টেন সিংহের জন্য কীভাবে ডিএনএস লুকআপ কনফিগার করা আছে?


33

যদি আমি আমার রেজোলভ.কমকে বিড়াল করি তবে আমি এই বার্তাটি দেখতে পাচ্ছি:

#
# Mac OS X Notice
#
# This file is not used by the host name and address resolution
# or the DNS query routing mechanisms used by most processes on
# this Mac OS X system.
#
# This file is automatically generated.
#

আমি একটি ডিএনএস এন্ট্রি যুক্ত করার চেষ্টা করছি। আমি আমার হোস্ট ফাইল সম্পাদনা করেছি এবং ডিএনএস ক্যাশে ফ্লাশ করেছি, তবে আমি ব্যবহার করলে নামটি সমাধান হচ্ছে না host servername। আমি ভেবেছিলাম সম্ভবত hostএটি hostsফাইলটি দেখার জন্য কনফিগার করা হয়নি । সমাধানের জন্য আমি কীভাবে আমার নতুন এন্ট্রি পেতে পারি এবং না হলে ওএসএক্স কী ব্যবহার করছে resolv.conf?

উত্তর:


17

হোস্ট টুলটি কেবল নামগুলি সমাধান করে না (যেমন সিস্টেমের নাম সমাধানকারী ব্যবহার করে) তবে ডিএনএস সার্ভারগুলি অনুসন্ধান করে (যেমন, প্যাকেটগুলি udp / 53 এবং সম্ভবত tcp / 53 তে প্রেরণ): এটি স্থানীয় hostsফাইলটি জানে না এবং ব্যবহার করবে না ।

আপনি যদি অপারেটিং সিস্টেমের রেজলভার পরীক্ষা করতে চান (যেমন, গেথস্টবাইনেম () এবং অনুরূপ লিবিসি ফাংশন) আপনি যে নামটি যুক্ত করেছেন তা পিন করার চেষ্টা করতে পারেন /etc/hostsএবং আপনি সেই ফাইলটিতে যা রেখেছেন তা সম্মানিত করবে।

এছাড়াও, যেমন আপনি ইতিমধ্যে ম্যাক ওএসএক্স-এ ডিএনএস লুকআপ ব্যবহার করেন না /etc/resolv.confএবং কোন ডিএনএস সার্ভারগুলি জিজ্ঞাসা করা হয়েছে তা কনফিগার করার সঠিক উপায়টি নেটওয়ার্ক সেটিংস গুই এবং / অথবা networksetupকমান্ডলাইন সরঞ্জামে রয়েছে। আমি সত্যই জানি না যে আপনি উত্সগুলি চেষ্টা করার ক্রমটি কনফিগার করতে পারেন কিনা তবে মানক আচরণটি হ'ল /etc/hostsপ্রথমে চেষ্টা করা এবং তার পরে সার্ভারগুলি ডিএনএস করা।


1
আমি getaddrinfo এর জন্য একটি পার্ল র‍্যাপারটি পেয়েছি: সার্চ.সি.পি.এন.আর.আপনি / সকেট-
বেন ফ্লিন

26

networksetupকমান্ডের মাধ্যমে ওএস এক্স-তে ডিএনএস রেজলভারগুলি যুক্ত করা যেতে পারে :

sudo networksetup -setdnsservers Wi-Fi 8.8.8.8 8.8.4.4

যথাযথভাবে নেটওয়ার্ক সংযোগের নাম .োকান। এই সমাধানগুলি স্বয়ংক্রিয়ভাবে উত্পন্ন হওয়ার সাথে সাথে রেজলভ.কনফ-এ উপস্থিত হবে, তবে রেজোলভকনফ-এ সরাসরি সম্পাদনাগুলি সেই রেজোলভারগুলি ব্যবহারের ফলে আসবে না। আমি ধরে নিই যে রেজোলভারগুলি কোথাও একটি প্লিস্টে সঞ্চিত রয়েছে; আমি অনুসন্ধান এবং ফিরে রিপোর্ট করব।

যোগ করার জন্য সম্পাদিত: দেখে মনে হচ্ছে XML plist ফাইলটি ডিএনএস সার্ভারগুলি সঞ্চয় করছে /Library/Preferences/SystemConfiguration/preferences.plist

/ প্রাইভেট / ইত্যাদি / হোস্টগুলিতে হোস্ট ফাইলটি নির্দিষ্ট নামের জন্য রেজোলিউশন জোর করার জন্য কাজ করা উচিত (/ ইত্যাদি / বেসরকারী / ইত্যাদিতে একটি সিমলিংক)। আপনি কি আপনার সিনট্যাক্স যাচাই করতে পারেন এবং আপনি সঠিক ফাইলটি সম্পাদনা করছেন?


সুতরাং আমি এই আদেশটি হোস্ট ফাইল যুক্ত করতে ব্যবহার করতে পারি?
বেন ফ্লিন

আপনি পারবেন না, এবং আপনার দরকার নেই
লুক 404

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

1
কখনও কখনও ইন্টারফেসটি বোকা নামগুলি দেয়, সঠিক নামটি পেতে আপনার যা প্রয়োজন তা করতে networksetup -listallnetworkservices , এছাড়াও এতে যদি স্পেস থাকে তবে আপনাকে পুরো নামটি এককভাবে উদ্ধৃত করতে হবে, যেমন:sudo networksetup -setdnsservers 'white space' 8.8.8.8 8.8.4.4
মার্সিন

2
53 এর চেয়ে আলাদা পোর্ট ব্যবহার করার জন্য কি রেজোলারটি কনফিগার করা সম্ভব?
রুন এফএস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.