আমি কীভাবে ডিএনএস রেজোলিউজ ঠিক করব যা উবুন্টু ১৩.১০ (সসেসি) এ আপগ্রেড করার পরে কাজ করে না


64

13.10 এ আপগ্রেড করার পরে আমার ডিএনএস সমাধানের ব্যর্থতা। দেখে মনে হচ্ছে যে ডিএনএস সার্ভারগুলি আমি ডিএইচসিপি (ল্যান) দ্বারা পেয়েছি সেগুলি ব্যবহৃত হয় না।

আমি অস্থায়ী যোগ করে সমস্যা সমাধানের পারে nameserver 8.8.8.8থেকে /etc/resolv.conf। কিন্তু তারপরেও ইন্ট্রানেট হোস্টগুলি এখনও সমাধান করা যায় না।

নেটওয়ার্ক সূচকটিতে সংযোগ তথ্য মেনু আইটেমটি ক্লিক করার সময় , প্রাথমিক ডিএনএস এবং মাধ্যমিক ডিএনএস সঠিকভাবে সেট করা থাকে। তবে আমার কম্পিউটারগুলি সেগুলি ব্যবহার না করার জন্য সিম করে।

সুতরাং আমার প্রশ্নগুলি:

  • আমি কিছু করা উচিত resolv.conf, যদি কিছু?
  • কীভাবে অনুসন্ধান করবেন, কোন নাম সার্ভারে আমার কম্পিউটার অনুসন্ধান করছে?
  • পরের দিকে কোথায় তাকান, তা জানতে, ডিএইচসিপি দ্বারা প্রাপ্ত নাম সার্ভারগুলি কেন ব্যবহার করা হয় না?

2
12.04 থেকে 14.04 এ আপগ্রেড করার সময় আমি একই সমস্যা পেয়েছি।
তারাসাচ

6
কিছু দিন আগে 16.10 এ আপগ্রেড করার পর থেকে আমি প্রতিদিনের ডিএনএস ব্যর্থতা পেয়েছি।
উইন্ডারাইডার

@ উইন্ড্রাইডার একই সমস্যা রয়েছে, নীচে dnsmasq সহ কৌশলটি কাজ করছে বলে মনে হচ্ছে।
সোর

আমি একটি নতুন ইনস্টল লুবুন্টু 17.04 এ সমস্যাটি পেয়েছিলাম এবং হোস্টগুলি ফাইলে ম্যানুয়ালি প্রয়োজনীয় ইউআরএল যুক্ত করে এটি সমাধান করেছি: Askubuntu.com/a/936972/34298
রুব77

উত্তর:


83

উবুন্টু 12.04-এর পরে ওবুন্টুতে নাম কীভাবে সমাধান করা যায় সে সম্পর্কে প্রথমে আপনাকে কিছুটা জানতে হবে।

Stéphane Graber এটা সম্পর্কে কিছু তথ্য গত বছরের ব্লগ এখানে । সবচেয়ে গুরুত্বপূর্ণ বিষয়টি হ'ল উবুন্টু সার্ভার এবং উবুন্টু ডেস্কটপ উভয়ই resolv.confফাইলটি পরিচালনা করতে রেজলভকনফ ব্যবহার করে । এর অর্থ হল যে আপনার আর /etc/resolv.confসরাসরি সম্পাদনা করা উচিত নয় ; পরিবর্তে আপনার নিজের নেটওয়ার্ক ইন্টারফেস কনফিগারেশন ইউটিলিটি কনজিগার করতে হবে রেজোলভকনফকে সঠিক তথ্য সরবরাহ করতে। উবুন্টু সার্ভারের জন্য নেটওয়ার্ক ইন্টারফেস কনফিগারেশন ইউটিলিটি ifup হয় এবং এটি ফাইল দ্বারা কনফিগার করা হয় /etc/network/interfaces। উবুন্টু ডেস্কটপের জন্য নেটওয়ার্ক ইন্টারফেস কনফিগারেশন ইউটিলিটি হ'ল নেটওয়ার্ক ম্যানেজার । এটিই আপনি ব্যবহার করছেন।

নেটওয়ার্ক ম্যানেজারটি নেটওয়ার্ক সূচক> সংযোগগুলি সম্পাদনা করে কনফিগার করা হয় । যাইহোক, ডিএইচসিপি দ্বারা কনফিগার করা নেটওয়ার্ক ইন্টারফেসগুলির জন্য সাধারণত কোনও সেটিংস নিজেই পরিবর্তন করার প্রয়োজন হয় না। সাধারণত যা হয় তা হ'ল (রিমোট) ডিএইচসিপি সার্ভারটি স্থানীয় ইন্টারফেসের জন্য একটি আইপি ঠিকানা এবং ব্যবহারের জন্য (রিমোট) ডিএনএস নেমসারভারের ঠিকানা উভয়ই নেটওয়ার্কম্যানেজারকে সরবরাহ করে। নেটওয়ার্ক ম্যানেজার একটি ফরোয়ার্ডিং নেমসার্ভারের একটি উদাহরণ শুরু করে যা স্থানীয়ভাবে 127.0.1.1 এ শোনে। এই ঠিকানা, 127.0.1.1, resolvconf যা রাখে পাঠানো হয় nameserver 127.0.1.1/etc/resolv.conf। নেটওয়ার্কম্যানেজার ফরওয়ার্ডিং নেমসারভারকে DHCP- সরবরাহিত ডিএনএস নেমসারভারের (রিমোট) আইপি ঠিকানা দেয়। এইভাবে স্থানীয় সিস্টেমে চলমান একটি প্রোগ্রাম রেজোলভারকে একটি হোস্টের নাম আইপি ঠিকানায় অনুবাদ করতে বলে; সমাধানকারী স্থানীয় ফরোয়ার্ডিং নেমসারভারকে 127.0.1.1 এ অনুসন্ধান করে; ফরোয়ার্ডিং নেমসার্ভার এটি সম্পর্কে বলা হয়েছে এমন রিমোট নেমসার্ভের অনুসন্ধান করে, একটি উত্তর পেয়ে এবং চেইনটিকে ব্যাক আপ পাঠায়।

নেটওয়ার্কম্যানেজার ডি-বাসের মাধ্যমে ফরওয়ার্ডিং নেমসারভার প্রক্রিয়াটির সাথে যোগাযোগ করে। কমান্ডটি চালিয়ে আপনি নেটওয়ার্কম্যানেজার ফরওয়ার্ডিং নেমসারভারকে কী বলেছিলেন তা দেখতে পাচ্ছেন

nmcli dev list iface eth0 | grep IP4.DNS

মন্তব্যগুলি থেকে উদ্ভূত আপডেট:
দ্রষ্টব্য যে রেজোলভকনফ আসলে সেই ফাইলটি লিখেছেন /run/resolvconf/resolv.confযা /etc/resolv.confপ্রতীকী লিঙ্ক বলে মনে করা হচ্ছে। যদি /etc/resolv.confপ্রতীকী লিঙ্ক না হয় তবে আপনাকে এটি পুনরায় তৈরি করতে হবে। এটি করতে আপনি চালাতে পারেন

sudo dpkg-reconfigure resolvconf

অথবা

sudo ln -sf /run/resolvconf/resolv.conf /etc/resolv.conf        

এই তথ্যের জন্য আপনাকে অনেক ধন্যবাদ। আমার ক্ষেত্রে কমান্ডটি সঠিক ডিএনএস সার্ভারগুলি দেখায়। তবে রেজোলফাকনফ ফাইলটি আপডেট হয় না। আমি যখন আমার মানগুলি রেখেছি তখন থেকেই এটির টাইমস্ট্যাম্প রয়েছে। সুতরাং আমাকে জানতে হবে কেন রেজোলভকনফ ফাইলটি লিখছে না।
Witek

15
রেজোলভকনফ আসলে /run/resolvconf/resolv.conf ফাইলটি লিখে এবং /etc/resolv.conf /run/resolvconf/resolv.conf- এর প্রতীকী লিঙ্ক বলে মনে করা হচ্ছে। আপনি যদি /etc/resolv.conf মুছে ফেলে থাকেন তবে আপনি প্রতীকী লিঙ্কটি মুছে ফেলেছেন। প্রতীকী লিঙ্কটি পুনরায় তৈরি করতে আপনি চালাতে পারেন sudo dpkg-reconfigure resolvconfবা করতে পারেনmv /etc/resolv.conf /run/resolvconf/resolv.conf && ln -s ../run/resolvconf/resolv.conf /etc/resolv.conf
jdthood

7
এটিতে 'ফিক্স' ব্যতীত সমস্ত কিছুই রয়েছে। আমি কীভাবে এই সমস্যাটি সমাধান করতে পারি?
অমল মুরালি

5
sudo dpkg-reconfigure resolvconfউত্তরের শেষ অংশে দেওয়া পরামর্শ অনুযায়ী চালানো যেতে পারে ।
jdthood

ধন্যবাদ!!! আমার সিস্টেমে কী ঘটেছিল তা নিশ্চিত নই তবে চালানো sudo dpkg-reconfigure resolveconfদুর্দান্ত কাজ করছে বলে মনে হচ্ছে!
মানেবানি

49

আমি নীচের লিঙ্কে প্রস্তাবিত পরিবর্তন করেছি (dnsmasq অক্ষম করা)। এখন সবকিছু দুর্দান্ত কাজ করে! http://www.ubuntugeek.com/how-to-disable-dnsmasq-in-ubuntu-12-04precise.html

/etc/NetworkManager/NetworkManager.confফাইল খুলুন

sudo gedit /etc/NetworkManager/NetworkManager.conf

লাইন হিসাবে মন্তব্য:

#dnsmasq deactivated
#dns=dnsmasq

4
Dnsmasq আউট মন্তব্য করার পরে, আপনি নেটওয়ার্ক পরিচালকের পুনরায় আরম্ভ করা প্রয়োজন: sudo restart network-manager
ডন কার্কবি

2
আমার ক্ষেত্রে ( sudo /etc/init.d/network-manager restart
জুবুন্টু

আপনি এই ঘটনাকেই আছে, যদিও কোন dnsmasq ইনস্টল করা আছে, এবং কিছুই এমনকি মন্তব্য নেই তাহলে, অ্যাড dns=defaultকরার [main]অধ্যায়। নেটওয়ার্কম্যানেজারের নিজস্ব কদর্য dnsmasq প্লাগইন রয়েছে যা এটি অন্যথায় ব্যবহার করবে।
dstibbe

1
আমাকে এই পুনঃসূচনাটি করতে হবে network-manager-sudo service network-manager restart
সুনগাম

আমার বাক্সগুলির একটিতে 17.10 এ আপগ্রেড করার পরে কোনও ডিএনএস ছিল না এবং এটি দেখা যায় /etc/resolv.conf কোনও প্রতীকী লিঙ্ক ছিল না। ঠিক কর. অন্য বাক্সটি আপগ্রেড করা শেষ হয়নি এবং আমি একটি ddkkg- নতুন ফাইল খুঁজে পেয়েছি dirmasq এর মধ্যে প্রধান পার্থক্য। এটি অনুলিপি করা হয়েছে এবং কোনও ডেমন পুনরায় আরম্ভ না করেই কাজ করেছে
fchen

20

সম্পাদনা 2: পূর্ববর্তী পোস্টটি মডারেশন দ্বারা যথাযথভাবে মুছে ফেলা হয়েছে, আমি যা সমাধান পেয়েছি তা পোস্ট করছি। তার জন্য দুঃখিত।

সম্পাদনা: আমি সবেমাত্র উত্তরটি পেয়েছি এবং এটি খুব ঠিক এই পৃষ্ঠায় রয়েছে - আমার মাইপিটির জন্য দুঃখিত sorry আমি এই পৃষ্ঠায় পাওয়া রিচার্ড লিন্ডস্টেটের সঠিক উত্তরটি প্রসারিত করে আমার অনুসন্ধানগুলি নীচে পোস্ট করেছি। আমি আমার প্রারম্ভিক গণ্ডগোল ছেড়ে কিছুটা প্রসঙ্গে। দয়া করে রিচার্ডের উত্তরটিকে সমর্থন করুন, তিনি এটি প্রাপ্য।

এটি আসলেই সহজ।

শুধু আপনার ইন্টারফেস কনফ ফাইল -> sudo vi / ইত্যাদি / নেটওয়ার্ক / ইন্টারফেস খুলুন

নিশ্চিত যে ওপিকে সাহায্য করে নি এবং এখন আমাকে সহায়তা করে না। আমরা স্থির ঠিকানা চাই না, আমরা ডিএইচসিপি সার্ভার যেগুলি প্রেরণ করে সেগুলি ব্যবহার করতে চাই। নেটওয়ার্ক ম্যানেজার এগুলি চিনতে পারে বলে মনে হয় তবে উবুন্টু তাদের কথায় কথায় এড়িয়ে চলে:

# nmcli dev list iface wlan0 | grep IP4.DNS
IP4.DNS[1]:          10.*.*.*
IP4.DNS[2]:          10.*.*.*
IP4.DNS[3]:          8.8.8.8

কিন্তু ...

# dig microsoft.com
; <<>> DiG 9.9.5-4.3-Ubuntu <<>> microsoft.com
;; global options: cmd
;; connection timed out; no servers could be reached

এবং আমার / ইত্যাদি / নেটওয়ার্ক / ইন্টারফেসগুলি হ'ল:

auto lo
iface lo inet loopback

যা কিছুটা অদ্ভুত, আমি আশা করব যে এখানে সমস্ত ইন্টারফেস ঘোষিত হবে (বা আমি কিছু অনুপস্থিত?)

সুতরাং, সংক্ষেপে:

  • শুরু করার জন্য কোনও ফাইল নিয়ে আমি গণ্ডগোল করি না
  • আমি ইতিমধ্যে দৌড়েছি dpkg-reconfigure resolvconf
  • ডান syMLink জায়গায় আছে
  • নেটওয়ার্ক ম্যানেজার DHCP থেকে সঠিক ডিএনএস সার্ভার পুনরুদ্ধার করে
  • উবুন্টু এ জাতীয় ঠিকানা ব্যবহার করে না
  • কর্মক্ষেত্রটি / ইত্যাদি / নেটওয়ার্ক / ইন্টারফেসগুলিতে 8.8.8.8 ঠিক করা উচিত যা আমি চাই না
  • আমি যে কোনও এবং সমস্ত পরিস্থিতিতে DHCP- সরবরাহিত ডিএনএস সার্ভারগুলি ব্যবহার করতে চাই।

অন্য থ্রেডটি খুলছেন না কারণ এখনই আমি 14.10 এ রয়েছি এটির সঠিক সমস্যাটি (তবে এটি 12.10 থেকে 13.04 এ ডি আপগ্রেড করার পরে থেকে আমার উপর ঝাঁপিয়ে পড়েছে)।

সমাধান

এই শেষ বাক্যাংশটি আমাকে সঠিক পথে পেয়েছে এবং কেবল তখনই আমি রিচার্ডের উত্তর লক্ষ্য করেছি।

সমস্যাটি বিরোধী dnsmasqএবং resolvconfপ্যাকেজগুলির সাথে সম্পর্কিত বলে মনে হচ্ছে । 12.10 অবধি dnsmasqব্যবহার করা হয়েছিল। ১৩.০৪-এর পরে, উবুন্টু একটি ডিএনএমএসএএসসি / রেজোলভকনফ হাইব্রিডে স্যুইচ করে বলে মনে হয়েছে, যেখানে আপনি প্যাকেজগুলি ইনস্টল করেছেন dnsmasq-baseএবং resolvconf, কিন্তু dnsmasqনিজেই নয়।

আমি এটি বলতে পারি না যে এটি 13.04 বা অন্য যে কোনও কিছুর জন্য আপগ্রেড স্ক্রিপ্টগুলিতে একটি বাগ রয়েছে, কারণ আপগ্রেড করার সময় (নতুন ইনস্টলগুলির মতো) রেজলভকনফ ইনস্টল করার সময়, ডিএনএসমাস্ক-বেসটি আপগ্রেড করা হয় এবং ডিএনএসএমএসকে (সঠিকভাবে) আনইনস্টল করা হয়।

ধরাটি হ'ল, আপগ্রেড স্ক্রিপ্টটি dns=dnsmasqলাইনের বাইরে মন্তব্য করতে ব্যর্থ /etc/NetworkManager/NetworkManager.conf। সুতরাং, যদিও ডিএনএসম্যাস্ক ডেমন সিস্টেমে আর উপস্থিত না থাকে, /etc/resolv.conf এখনও এটি প্রত্যাশা করে।


এই খুব ভয়ঙ্কর!
মেটাডিংস

1
ওএমজি এটি আমার ডিএনএস সমস্যাগুলি গত 3 বছর ধরে সমাধান করেছে! আপনি যদি ইনস্টল dnsmasqdnsmasq-baseইনস্টল করেন তবে এনএম 127.0.0.1এর /etc/resolv.confপরিবর্তে প্রবেশ করবে 127.0.1.1। আমি কেবল আনইনস্টল করেছি dnsmasq(এবং এনএম সক্ষম করে রেখেছি ) এবং সবকিছু ঠিকঠাক কাজ করে।
ব্যবহারকারী1129682

4
ভবিষ্যতের গুগলারের মনে রাখা উচিত যে এটি sudo service network-manager restartকার্যকর হওয়ার জন্য আপনাকে অবশ্যই তা করতে হবে।
টাইমলমার

সার্ভিসে ভাল পয়েন্ট নেটওয়ার্ক-ম্যানেজার পুনরায় চালু!
হেনরিক

7

এটি আসলেই সহজ।

শুধু আপনার ইন্টারফেস কনফ ফাইল -> sudo vi / ইত্যাদি / নেটওয়ার্ক / ইন্টারফেস খুলুন

এবং আপনার ইন্টারফেসের অধীনে (সম্ভবত eth0) আপনি সমস্ত সাধারণ কনফিগারেশন দেখতে পাবেন।

address 192.168.22.71
netmask 255.255.255.0
gateway 192.168.22.1

গেটওয়ের পরে কেবল 'ডিএনএস-নেমসার্ভারগুলি 8.8.8.8 8.8.8.9' বা আপনি যে নামসারভার ব্যবহার করতে যাচ্ছেন তা যুক্ত করুন।

সুতরাং আপনার কনফিগারেশনটি হওয়া উচিত:

address 192.168.22.71
netmask 255.255.255.0
gateway 192.168.22.1
dns-nameservers 8.8.8.8 8.8.8.9

তারপরে একটি 'সুডো সার্ভিস নেটওয়ার্কিং রিস্টার্ট' করুন এবং আপনি যেতে ভাল!

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