จำกัด เซิร์ฟเวอร์ DHCP ของ dnsmasq ให้เป็นหนึ่งอินเตอร์เฟส


คำตอบ:


14

หน้าคนอธิบายได้อย่างมาก ถ้ามันเป็นเพียง DHCP คุณไม่ต้องการที่จะทำงานบนแล้วคุณสามารถใช้wlan0 --no-dhcp-interface=wlan0หากคุณไม่ต้องการให้ dnsmasq ฟังเลยwlan0คุณสามารถใช้งาน--except-interface=wlan0ได้

ถ้าคุณต้องการ dnsmasq เพื่อฟังบนแล้วคุณสามารถใช้eth0--interface=eth0


12

สำหรับผู้ที่ชอบฉันสับสนว่าทำไมพอร์ต 53 ยังคงเปิดอยู่สำหรับอินเทอร์เฟซทั้งหมดโดยไม่คำนึงถึงตัวเลือกที่คุณใส่เพื่อ จำกัด มีอีกหนึ่งตัวเลือกที่ต้องเปิดใช้งาน

-z, --bind-interfaces On systems which support it, dnsmasq binds the wildcard address, even when it is listening on only some interfaces. It then discards requests that it shouldn't reply to. This has the advantage of working even when interfaces come and go and change address. This option forces dnsmasq to really bind only the interfaces it is listening on. About the only time when this is useful is when running another nameserver (or another instance of dnsmasq) on the same machine. Setting this option also enables multiple instances of dnsmasq which provide DHCP service to run in the same machine.


นี่เป็นสิ่งที่ง่ายต่อการมองข้าม แต่มันเป็นกุญแจสำคัญในการทำให้มันทำงานร่วมกับโซลูชั่น DHCP อื่น ๆ (เช่นในกรณีของฉันคือบริการภายใน QNAP) บางคนควรใช้คำตอบหลักสามข้อแล้วรวมเข้าด้วยกัน สิ่งนี้ช่วยชีวิตฉันขอบคุณ
Danielo515

11

สามารถทำได้จากไฟล์กำหนดค่า dnsmasq และมีการบันทึกไว้ในไฟล์ตัวอย่างของ Simon Kelley ที่http://www.thekelleys.org.uk/dnsmasq/docs/dnsmasq.confample :

# If you want dnsmasq to listen for DHCP and DNS requests only on
# specified interfaces (and the loopback) give the name of the
# interface (eg eth0) here.
# Repeat the line for more than one interface.
#interface=
# Or you can specify which interface _not_ to listen on
#except-interface=
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.