Score:0

DNS ในเครื่องที่มี dnsmasq ไม่ทำงานสำหรับไคลเอนต์

ธง cz

ฉันกำลังพยายามติดตั้ง raspberry Pi ซึ่งทำงานด้วยเซิร์ฟเวอร์ Ubuntu 20.04 เป็นเราเตอร์ไร้สาย ดังนั้นฉันจึงสามารถสร้างเครือข่ายท้องถิ่นที่อยู่เบื้องหลัง raspberry pi ของฉันได้

ฉันกำลังใช้ โฮสต์แพด เพื่อสร้าง Wifi Access Point และ dnsmasq เพื่อให้มีเซิร์ฟเวอร์ DNS และ DHCP ในเครื่อง ดูเหมือนว่าเซิร์ฟเวอร์ DHCP จะทำงานได้ดี: เมื่อไคลเอนต์เชื่อมต่อ (เช่น macbook ของฉัน) เซิร์ฟเวอร์จะได้รับ IP ในช่วงที่กำหนดโดย DHCP

แต่ฉันมีปัญหากับเซิร์ฟเวอร์ DNS สำหรับชื่อโดเมนท้องถิ่นที่กำหนดไว้ใน / etc / โฮสต์. มันทำงานได้ดีบน Rasp Pi แต่ไม่ใช่สำหรับลูกค้า: เมื่อฉันลอง nslookup gw.wlan จากเปลือกลูกค้าฉันได้รับ:

เซิร์ฟเวอร์: 1.1.1.1
ที่อยู่: 1.1.1.1#53

** เซิร์ฟเวอร์ไม่พบ gw.wlan: NXDOMAIN

gw.wlan กำหนดไว้ใน / etc / โฮสต์ ของ rasp Pi (ดูด้านล่าง)

มีความคิดว่าทำไม dnsmask ไม่อ่านไฟล์ / etc / โฮสต์ ไฟล์ ?

ใช้งานได้ดีกับชื่อโดเมนอินเทอร์เน็ต ถ้าฉันวิ่ง ปิง google.fr ในไคลเอนต์เชลล์มันส่ง Ping google ได้ดี เฉพาะชื่อโดเมนท้องถิ่นเท่านั้นที่ไม่ได้รับการแก้ไข


นี่คือไฟล์การกำหนดค่าของฉัน:

  • /etc/dnsmasq.conf:
# อินเตอร์เฟซการฟัง
อินเทอร์เฟซ = wlan0

# กลุ่มของที่อยู่ IP ที่ให้บริการผ่าน DHCP
dhcp-ช่วง=192.168.4.2,192.168.4.20,255.255.255.0,24ชม.

# โดเมน DNS ไร้สายในพื้นที่
โดเมน=wlan

# นามแฝงสำหรับเราเตอร์นี้
ที่อยู่=/gw.wlan/192.168.4.1

# แก้ไข ip สำหรับลูกค้า
dhcp-โฮสต์=98:01:a7:95:63:13,192.168.4.2

# เส้นทาง
dhcp-option=3,192.168.4.1
ฟังที่อยู่ = 127.0.0.1,192.168.4.1
การค้นหาเป็นภาษาท้องถิ่น
ท้องถิ่น=/wlan/
  • /etc/netplan/01-netcfg.yaml:
เครือข่าย:
  รุ่น: 2
  เรนเดอร์: เครือข่าย
  อีเธอร์เน็ต:
    wlan0:
      dhcp4: เท็จ
      ที่อยู่:
        - 192.168.4.1/24
  • / etc / โฮสต์ :
127.0.0.1 localhost อูบุนตู
192.168.4.1 gw.wlan
192.168.4.2 jjmac.wlan

# บรรทัดต่อไปนี้เป็นที่ต้องการสำหรับโฮสต์ที่รองรับ IPv6
::1 ip6-localhost ip6-วนกลับ
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
  • /etc/resolv.conf :
โดเมน wlan
ค้นหา wlan
เนมเซิร์ฟเวอร์ 192.168.4.1
เนมเซิร์ฟเวอร์ 8.8.8.8
เนมเซิร์ฟเวอร์ 1.1.1.1
  • /etc/systemd/resolved.conf :
DNSStubListener=ไม่
waltinator avatar
it flag
กำจัด 'nameserver' 2 บรรทัดสุดท้าย เซิร์ฟเวอร์เหล่านั้นจะไม่รู้อะไรเลยเกี่ยวกับ `.wlan` นอกจากนี้ ใน `dnsmasq.conf` ยังมีความไม่สอดคล้องกันระหว่าง `dhcp-address=` และ `listen=` เหตุใดจึงมีที่อยู่ IPv6 เพียงอันเดียว
cylon86 avatar
cz flag
@waltinator ขอบคุณสำหรับการตอบกลับของคุณ เซิร์ฟเวอร์ชื่อสองตัวสุดท้าย (8.8.8.8 และ 1.1.1.1) อยู่ที่นั่น ดังนั้นฉันจึงสามารถเข้าถึงอินเทอร์เน็ตจากเซิร์ฟเวอร์ได้ ฉันไม่เห็นความไม่สอดคล้องกันในที่อยู่ จะดู `dhcp-address` ที่ไหน บางทีบรรทัด `dhcp-host=98:01:a7:95:63:13,192.168.4.2` อาจทำให้สับสน แต่จริง ๆ แล้วกำหนด ip ของไคลเอนต์ด้วยที่อยู่ mac ที่กำหนดไม่ใช่ ip ของโฮสต์
cylon86 avatar
cz flag
ฉันยังแก้ไขโพสต์เริ่มต้นของฉัน ฉันเพิ่ม ip masquerade ดังนั้นตอนนี้ชื่อโดเมนอินเทอร์เน็ตได้รับการแก้ไขอย่างดี เฉพาะชื่อโดเมนท้องถิ่นเท่านั้นที่ไม่ได้

โพสต์คำตอบ

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