18.04 এ কীভাবে আমি স্থানীয় ওয়াইল্ডকার্ড (127.0.0.1) ডোমেন রেজোলিউশন সেট আপ করতে পারি?


18

উবুন্টু ১৪.০৪-তে আমি স্থানীয় মেশিনে (বাড়িতে ডেস্কটপ কম্পিউটার) ওয়াইল্ডকার্ড উদাহরণ.কম ডোমেনগুলি সমাধান করার জন্য dnsmasq ব্যবহার করছি।

চারপাশে অনেকগুলি পড়ার পরেও আমি আমার জীবনের জন্য 18.04 এর একটি পরিষ্কার ইনস্টল করে তা বাছাই করতে পারি না।

এই মুহুর্তে আমি যা অর্জন করতে চাই তা হ'ল:

  • ping example.com পিনিংয়ের জন্য 127.0.0.1 এবং 93.184.216.34 নয়;
  • জন্য ping anysubdomain.example.com আরো 127.0.0.1 ping করা;
  • এবং ping google.com রাউটার / আইপি ডিএনএসের মাধ্যমে আসল গুগল ডটকমকে পিং করার জন্য ।

অবশ্যই এটি অবশ্যই সহজ, এমনকি তুচ্ছ?

তবে আমি স্ট্যাম্পড। আমি উদাহরণ ডটকমের সমাধান করতে পারি তবে কেবল সমস্ত কিছু ভাঙার ব্যয়ে।

কিভাবে আমি এটি করতে পারব?


1
14.04-তে আপনি যেমন করেছেন ঠিক তেমনই ডিএনএসম্যাস্ক ইনস্টল করবেন না কেন?
vidarlo

1
@ বিদারলো অবশ্যই আমি প্রথম কাজটি করেছি, যেমনটি আমি আমার প্রশ্নে ইঙ্গিত করেছি। তবে 14.04 এর বিপরীতে যা "পোর্ট 53 এর জন্য শ্রবণ সকেট তৈরি করতে ব্যর্থ হয়েছে: ইতিমধ্যে ব্যবহারের ঠিকানা" ত্রুটি হয়েছে। আমি যে উত্তরটি গ্রহণ করেছি তা স্পষ্টভাবে dnsmasq ইনস্টল না করে সূক্ষ্মভাবে কাজ করে।
নিক রাইস

উত্তর:


30

উবুন্টু 18.04 এর জন্য পদক্ষেপগুলি এখানে। এটি কিছুটা দীর্ঘ হয়েছে যেহেতু কনফিগার করার সাথে systemd-resolvedখুব ভাল খেলছে না ।NetworkManagerdnsmasq

তবুও আমি এখনও dnsmasqথেকে শুরু করার পরামর্শ দিচ্ছি NetworkManager, কারণ নেটওয়ার্ক সংযোগের পরিবর্তনগুলি (ডাব্লুআইপিআই, তারযুক্ত, ...) স্বচ্ছভাবে পরিচালনা করা হবে।

নেটওয়ার্কম্যানেজারে dnsmasq সক্ষম করুন

ফাইল সম্পাদনা /etc/NetworkManager/NetworkManager.conf, এবং লাইন যোগ dns=dnsmasqকরতে [main]অধ্যায়, এটা ভালো হবে:

[main]
plugins=ifupdown,keyfile
dns=dnsmasq

[ifupdown]
managed=false

[device]
wifi.scan-rand-mac-address=no

নেটওয়ার্কম্যানেজারকে পরিচালনা করতে দিন /etc/resolv.conf

sudo rm /etc/resolv.conf ; sudo ln -s /var/run/NetworkManager/resolv.conf /etc/resolv.conf

সজ্জিত করা example.com

echo 'address=/.example.com/127.0.0.1' | sudo tee /etc/NetworkManager/dnsmasq.d/example.com-wildcard.conf

পুনরায় লোড NetworkManagerএবং পরীক্ষা

পরিবর্তনগুলি কার্যকর করার জন্য নেটওয়ার্কম্যানেজারটি পুনরায় লোড করা উচিত।

sudo systemctl reload NetworkManager

তারপরে আমরা যাচাই করতে পারি যে আমরা কিছু সাধারণ সাইটে পৌঁছাতে পারি:

dig askubuntu.com +short
151.101.129.69
151.101.65.69
151.101.1.69
151.101.193.69

এবং শেষ অবধি যাচাই করুন example.comএবং সাবডোমেনগুলি হিসাবে সমাধান করা হয়েছে 127.0.0.1:

dig example.com askubuntu.example.com a.b.c.d.example.com +short
127.0.0.1
127.0.0.1
127.0.0.1

"সিস্টেমড-রেজলিউড নেটওয়ার্ক নেটওয়ার্কের সাথে খুব ভাল খেলছে না" এর অর্থ কী?
সেবাস্তিয়ান স্টার্ক 4'18

1
যখন নেটওয়ার্কম্যানেজার dns = dnsmasq ব্যবহার করে, এটি dnsmasq ব্যবহার করার জন্য systemd- সংশোধন করা উচিত, স্বয়ংক্রিয় হতে পারে।
পিমে

1
আপনাকে ধন্যবাদ, এটি পুরোপুরি কাজ করেছে! দেখে মনে হচ্ছে আমি অন্য এক ঘন্টার জন্য আপনাকে অনুগ্রহ দিতে পারব না, এবং সকালে এক সকালে চলে যাওয়ার পরে আমি এখন বিছানায় শুয়ে আছি এবং আমি আগামীকাল আবার স্যুইচ করার সময় তা করব।
নিক রাইস

2
অসাধারণ. আমি বিভিন্ন বিভিন্ন কৌশল পড়েছি। অবশেষে এটিই কাজ করেছিল।
রেডসান্দ্রো

3
যারা systemd-সমাধান হয়েছে, ফিরে প্রত্যাবর্তন করতে পছন্দ জন্য /etc/resolv.confপয়েন্ট /run/systemd/resolve/stub-resolv.confডিফল্টরূপে।
পোথি কলিমুথু

2

নিশ্চিত মধ্যে বানিয়ে /etc/NetworkManager/NetworkManager.confনিম্নলিখিত লাইন না বর্তমান বা আউট মন্তব্য করেছেন:

dns=dnsmasq

নেটওয়ার্ক ম্যানেজার পুনরায় চালু করুন:

sudo systemctl restart NetworkManager

প্রক্রিয়াটি মেরে ফেলা বা আপনার সিস্টেমটি রিবুট করে নেটওয়ার্ক ম্যানেজার-নিয়ন্ত্রিত ডিএনএমএসক আর চলছে না তা নিশ্চিত করুন।

তারপরে dnsmasq ইনস্টল করুন:

sudo apt install dnsmasq

নিম্নলিখিতগুলিতে এতে যুক্ত করুন /etc/dnsmasq.d/example.com:

address=/example.com/127.0.0.1

ডানমাস্ক পুনরায় চালু করুন:

sudo systemctl restart dnsmasq

এখন আপনার কাছে উদাহরণ ডটকমের জন্য একটি ওয়াইল্ডকার্ড ডিএনএস ওভাররাইড থাকা উচিত।


1
আমি এই কাজ করতে পারে না। তাত্ক্ষণিকভাবে একটি পরিষ্কার ন্যূনতম ইনস্টল অনুসরণ করুন ("মুছে ফেলুন ডিস্ক" বিকল্পের সাহায্যে) sudo apt install dnsmasq"ত্রুটি 53 পোর্টের জন্য শ্রবণ সকেট তৈরি করতে ব্যর্থ হয়েছে: ইতিমধ্যে ব্যবহারের ঠিকানা" ত্রুটি দেয়। পরে কোনও পদক্ষেপটি সমাধান করার ক্ষেত্রে আমি যেভাবেই হোক শেষ পর্যন্ত অব্যাহত রেখেছিলাম, তবে এটি কার্যকর হয়নি এবং এটি কার্যকর হয়নি।
নিক রাইস

তারপরে নেটওয়ার্কম্যানেজার দ্বারা শুরু করা ডিএনএসম্যাক এখনও চলছে। সুতরাং এটি প্রথমে নিষ্ক্রিয় করা উচিত, অবশেষে হত্যা করা উচিত এবং কেবল তখনই dnsmasq প্যাকেজ ইনস্টল করা উচিত।
সেবাস্তিয়ান স্টার্ক

ধন্যবাদ, সেবাস্তিয়ান তবে আমি ইতিমধ্যে পিমের উত্তরটি স্বীকার করে নিয়েছি যা নির্দ্বিধায় কাজ করেছে, সুতরাং আমি আর এটির সাথে আর খেলা না করে এখনই এগিয়ে যেতে সক্ষম হয়েছি।
নিক রাইস

@ নিকরাইস এটি নিয়ে কোনও সমস্যা নেই, তবে অন্যরা হয়তো চেষ্টা করতে চান
সেবাস্তিয়ান স্টার্ক

হ্যাঁ অবশ্যই, সেবাস্তিয়ান। আমি প্রথমে আপনার উত্তরটি চেষ্টা করেছিলাম কারণ এটি ছিল সহজতম এবং যদি এটির প্রয়োজন হয় তবে এটি একটি প্রাথমিক প্রাথমিক পদক্ষেপ তবে এটি খুব ভাল one
নিক রাইস

0

এটি হোস্ট ফাইল সম্পাদনা করার মতো সহজ হবে না। আপনার কাছে কয়েকটি বিকল্প রয়েছে:

এই অজগর ডিএনএস প্রক্সি যা / ইত্যাদি / হোস্টগুলিতে ওয়াইল্ডকার্ডগুলি পরিচালনা করবে

ডিএনএসম্যাস্ক ব্যবহার করা হচ্ছে


ধন্যবাদ। DNSmasq প্রশ্নের আপনার লিঙ্কটি আমি 14.04-এ করছি in কেবল একটি তাজা 18.04 এ ইনস্টল করার ক্ষেত্রে বন্দর বিরোধের কারণে কাজ করছে না। তাই বক্সের বাইরে এর তুলনায় অন্য কিছু করা দরকার। পাইথন ডিএনএস প্রক্সিটির জন্য প্রয়োজনীয় সমস্ত কোডটির দিকে তাকানো, আমি প্রয়োজনীয় সমস্ত কিছুই বিশ্বাস করতে পারি না। আমার ধারণা, এর আগে ছাড়া এটি ছিল না যারা / ইত্যাদি / হোস্ট ব্যবহার করার জন্য জোর দিয়েছিলেন তাদের জন্য।
নিক রাইস 21

netstat -tulpnবন্দরটি কী ব্যবহার করছে তা পরীক্ষা করতে আপনি কি করতে পারেন ? সম্পাদনা: কিছুই নয়, গৃহীত উত্তর দেখেছেন। সমস্যাটি সিস্টেম-রেজোলিউশন।
হরিকৃষ্ণন আর
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.