Score:3

การแก้ไข DNS ล้มเหลวหลังจากผ่านไปสองสามชั่วโมง

ธง km

ฉันใช้ Ubuntu Server 20.04.2 LTS บน raspberry pi 4 8gb การแก้ไข DNS หยุดทำงานหลังจากรีบูตไม่กี่ชั่วโมง การรีบูตช่วยแก้ปัญหาได้ แต่เป็นเพียงการช่วยวงดนตรี DNS ของฉันถูกตั้งค่าเป็น 8.8.8.8 และ 8.8.4.4

ฉันได้ลองวิ่งแล้ว tcpdump -n -i eth0 โฮสต์ 8.8.8.8 และ ขุด @8.8.8.8 www.google.com พร้อมกันและผลลัพธ์คือ

กำลังฟัง eth0, ประเภทลิงก์ EN10MB (Ethernet), ขนาดการดักจับ 262144 ไบต์
22:06:51.643074 IP 192.168.0.2.57220 > 8.8.8.8.53: 6359+ [1au] A? www.google.co.th (55)
22:06:51.651180 IP 8.8.8.8.53 > 192.168.0.2.57220: 6359 1/0/1 A 142.250.200.4 (59)

(IP ของเครื่องคือ 192.168.0.02)

NSLookup ก็ล้มเหลวเช่นกัน โดยรันสิ่งต่อไปนี้: nslookup www.google.com ผลตอบแทน

;; หมดเวลาการเชื่อมต่อ; ไม่สามารถเข้าถึงเซิร์ฟเวอร์ได้

ฉันต้องการให้ DNS ไม่เสียหายทุกๆ 6 ชั่วโมงหรือมากกว่านั้น และการรีบูตเครื่องทุกครั้งที่เกิดการขัดข้องนั้นค่อนข้างไม่สะดวก

แก้ไข:

เรียกใช้ telnet ส่งคืนสิ่งนี้:

root@najemi:~# telnet 8.8.8.8 53
ลอง 8.8.8.8...
เชื่อมต่อกับ 8.8.8.8
อักขระ Escape คือ '^]'
การเชื่อมต่อถูกปิดโดยโฮสต์ต่างประเทศ

วิ่ง tcpdump โดยไม่มีข้อโต้แย้งใด ๆ กลับมา นี้

วันที่ดูถูกต้อง:

root@najemi:~# วันที่
ส. 3 ก.ค. 05:14:10 UTC 2021

sudo tcpdump -n -i eth0 โฮสต์ 8.8.8.8 ขณะวิ่ง ขุด +cdflag @8.8.8.8 www.google.com ผลตอบแทน:

กำลังฟัง eth0, ประเภทลิงก์ EN10MB (Ethernet), ขนาดการดักจับ 262144 ไบต์
05:18:07.377351 IP 192.168.0.2.43923 > 8.8.8.8.53: 37809+% [1au] A? www.google.co.th (55)
05:18:07.422270 IP 8.8.8.8.53 > 192.168.0.2.43923: 37809 1/0/1 A 142.250.180.4 (59)

IP เป็นแบบคงที่

ยังคิดว่าฉันจะพูดถึงว่าปัญหาเหล่านี้เริ่มเกิดขึ้นหลังจากติดตั้ง pihole มันถูกถอนการติดตั้งแล้ว แต่ปัญหายังคงอยู่

แก้ไข 2:

เนื้อหาของ /etc/resolv.conf เป็น:

# สร้างโดย dhcpcd จาก eth0.dhcp
# /etc/resolv.conf.head สามารถแทนที่บรรทัดนี้ได้
เนมเซิร์ฟเวอร์ 8.8.8.8
เนมเซิร์ฟเวอร์ 8.8.4.4
# /etc/resolv.conf.tail สามารถแทนที่บรรทัดนี้ได้

แก้ไข 3:

ผลลัพธ์ของ อุปกรณ์ nmcli แสดง eth0 | grep IP4.DNS มันว่างเปล่า.

Simon Sudler avatar
us flag
telnet ไม่ทำงาน เนื่องจาก telnet ไม่รองรับ `:` -> `telnet 8.8.8.8 53` ควรใช้งานได้ เพิ่มเนื้อหาของ `/etc/resolv.conf` ในคำตอบของคุณ ตรวจสอบ syslog เพื่อหาข้อผิดพลาดเกี่ยวกับบริการ DNS
MartinNajemi avatar
km flag
@SimonSudler ฉันได้เพิ่มเนื้อหาของ `/etc/resolv.conf` และจะเพิ่มผลลัพธ์ของ telnet 8.8.8.8 53 เมื่อ DNS ล้มเหลวอีกครั้ง
aq flag
นอกจากนี้ telnet ยังล้มเหลวเนื่องจากมีคำว่า 'to' อยู่ในนั้น
MartinNajemi avatar
km flag
@rtaft ขอบคุณ :) ทุกอย่างหลังจากการแก้ไขได้รับคำแนะนำจากผู้ใช้รายอื่น
aq flag
คุณช่วยโพสต์ผลลัพธ์ของ `อุปกรณ์ nmcli แสดง eth0 | เกรป IP4.DNS`
MartinNajemi avatar
km flag
@rtaft ผลลัพธ์ว่างเปล่า แต่ dns ดูเหมือนว่าจะทำงาน atm
Score:3
ธง in

ขึ้นอยู่กับเวอร์ชันของ PiHole ที่คุณมีในเครื่องของคุณ ถอนการติดตั้งไพรู และรับการตั้งค่าก่อนหน้ากลับคืน ซอฟต์แวร์นี้มีชื่อเสียงในด้านความคงทน

มีบางรายการที่คุณอาจต้องการตรวจสอบ:

  1. คุณมี /etc/init.d/pihole-FTL ไฟล์? ถ้าเป็นเช่นนั้นจะสร้าง /etc/resolvconf/run/interface/lo.piholeFTL ไฟล์ที่ทำให้ความละเอียด DNS หายไป ลบสิ่งที่ รีบูต
  2. คุณมีไฟล์ที่เหลือจาก PiHole หรือไม่? มาดูกัน:
    sudo ค้นหา / -iname '*pihole*' -not -path '/sys/kernel/*'
    
    หากมีสิ่งใดส่งคืนให้ลบออก เพื่อประหยัดเวลา คุณสามารถใช้คำสั่งต่อไปนี้ ซึ่งจะขัดไฟล์ที่คุณไม่ได้เลือกที่จะเก็บไว้:
    sudo ค้นหา / -iname '*pihole*' -not -path '/sys/kernel/*' -print0 2>/dev/null | xargs -0 -o sudo rummyrumrum -rfi
    
    หมายเหตุ (1): รัมมี่รัมรัม ไม่ใช่คำสั่งที่แท้จริง สิ่งนี้ควรแทนที่ด้วย rm. คำสั่งที่ไม่ดีคือเพื่อให้แน่ใจว่าผู้คนจะไม่คัดลอก/วางและทำให้ระบบของพวกเขายุ่งเหยิง เดอะ ผม ฟันธงเข้า -rfi หมายความว่า rm คำสั่งจะทำงานในโหมดโต้ตอบ โดยคุณต้องตอบ วาย หรือ เอ็น สำหรับทุกไฟล์ก่อนที่จะถูกลบหากคุณเชื่อถือคำสั่งนี้ 100% คุณสามารถกำจัด ผม.
    โน้ต 2): คุณอาจต้องการยกเลิกการต่อเชื่อมเครือข่ายใด ๆ ก่อนที่จะเรียกใช้ หา /เนื่องจากสิ่งนี้จะสแกน ทุกอย่าง คอมพิวเตอร์ของคุณสามารถเข้าถึง
  3. เป็น dnsmasq และ dhcpcd5 ต้องการซ่อมแซมอันเป็นผลมาจาก PiHole หรือไม่ การติดตั้งใหม่อาจเป็นไปตามลำดับ:
    sudo apt ล้าง dnsmasq dhcpcd5
    sudo apt ติดตั้ง dnsmasq dhcpcd5
    sudo systemctl รีสตาร์ท systemd- แก้ไขแล้ว
    
    เมื่อเสร็จแล้ว คุณอาจต้องกำหนดค่าเซิร์ฟเวอร์ DNS ใหม่เป็น 8.8.8.8 และ 8.8.4.4.

นี้ ควร คืนค่าความสามารถของ Pi ในการใช้ DNS นานกว่าหกชั่วโมง อีกวิธีหนึ่งที่ฉันได้เห็นคือทำ resolv.conf ไม่เปลี่ยนรูป:

sudo chattr +i /etc/resolv.conf

อาจมีข้อผิดพลาดบางอย่างบันทึกไว้ใน /var/log/syslog ด้วยเหตุนี้ เช่น ระบบ ชอบที่จะควบคุมไฟล์ได้อย่างสมบูรณ์ แต่จะทำให้แน่ใจว่าไม่มีอะไรแก้ไข เนมเซิร์ฟเวอร์ หรือ ตัวเลือก ที่คุณได้ระบุไว้

MartinNajemi avatar
km flag
ฉันได้รับข้อผิดพลาดนี้เมื่อเรียกใช้ `sudo chattr +i /etc/resolv.conf`: `chattr: ไม่รองรับการทำงานขณะอ่านแฟล็กบน /etc/resolv.conf` นอกเหนือจากนั้นดูเหมือนว่าจะได้ผล ฉันจะแจ้งให้คุณทราบภายใน 24 ชั่วโมง
MartinNajemi avatar
km flag
สิ่งที่ฉันทำเพื่อแก้ไขปัญหาคือลบไฟล์เนื่องจากเป็น symlink จากนั้นสร้างใหม่และเรียกใช้คำสั่งอีกครั้ง ดูเหมือนว่าจะใช้งานได้ เราจะเห็น

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา