Không tự động bao gồm tất cả các tên miền phụ trong địa chỉ DNSMasq


10

Có thể định cấu hình DNSMasq sao cho nó chỉ trả về một địa chỉ IP cố định cho một yêu cầu cho tên miền chính xác đó chứ không phải cho tên miền phụ của nó? Đó là, tôi muốn nó trả về một IP cố định khi giải quyết example.com, nhưng không a.example.com, b.example.comvv

Câu trả lời:


9
host-record=example.com,1.2.3.4

Các trang người đàn ông dnsmasq nói:

--host-record = <name> [, <name> ....] [<IPv4-address>], [<IPv6-address>]
Thêm bản ghi A, AAAA và PTR vào DNS. Điều này thêm một hoặc nhiều tên vào DNS với các bản ghi IPv4 (A) và IPv6 (AAAA) được liên kết. Một tên có thể xuất hiện trong nhiều bản ghi máy chủ và do đó được gán nhiều hơn một địa chỉ. Chỉ địa chỉ đầu tiên tạo bản ghi PTR liên kết địa chỉ với tên. Đây là quy tắc tương tự như được sử dụng để đọc các tập tin máy chủ. tùy chọn bản ghi máy chủ được coi là được đọc trước tệp máy chủ, do đó, tên xuất hiện ở đó ngăn cản việc tạo bản ghi PTR nếu nó cũng xuất hiện trong tệp máy chủ. Không giống như các tập tin máy chủ, tên không được mở rộng, ngay cả khi máy chủ mở rộng có hiệu lực. Tên ngắn và dài có thể xuất hiện trong cùng một bản ghi máy chủ , ví dụ. --host-record = máy tính xách tay, máy tính xách tay.thekelleys.org, 192.168.0.1,1234 :: 100


Câu hỏi mang thẻ "Internal-dns", trong đó "host-record" áp dụng cho dns bên ngoài hay còn gọi là dns có thẩm quyền.
Sao lưu dự phòng

lưu ý rằng nếu bạn đang cố gắng chiếm lấy một bản ghi máy chủ hiện có trên internet (ví dụ: viết lại nó cho lan của bạn), thì nếu bạn bỏ qua địa chỉ v6 và máy chủ có địa chỉ v6 thực trên internet, dnsmasq sẽ trả về v4 bị ghi đè của bạn địa chỉ là A, và bản ghi AAAA v6 thực trên Internet. chỉ định cả hai nếu bạn không muốn các máy chủ có khả năng v6 không "rơi vào" máy chủ internet thực sự thông qua v6. Tôi đã viết lại archive.ubfox.com để chỉ vào máy nhân bản cục bộ của mình và chỉ chỉ định địa chỉ v4 trên mạng LAN của tôi - hóa ra nó cũng có địa chỉ v6 và tôi cũng cần đảm bảo rằng tôi đã cấu hình nó trong dnsmasq.
lén

3

Tập tin cấu hình của bạn thế nào? dnsmasq sẽ chỉ giải quyết các tên miền phụ nếu mục nhập của bạn bắt đầu bằng dấu chấm.

Thí dụ: address=/.subdomain.pc01.domain.com/192.168.1.2

Nếu bạn có nó theo cách này:

address=/subdomain.pc01.domain.com/192.168.1.2

nó cũng sẽ giải quyết asd.subdomain.pc01.domain.com:

$ host asd.subdomain.pc01.domain.com
asd.subdomain.pc01.domain.com has address 192.168.1.2

Điểm thú vị, nhưng nếu bạn đọc kỹ câu hỏi, đây không phải là điều OP yêu cầu.
jcharaoui

1

Chỉ cần thêm một mục nhập cho tên miền cụ thể đó trong tệp máy chủ trên máy chủ đang chạy DNSMasq


Điều đó không hiệu quả; DNSMasq trả về cùng một IP cố định cho tất cả các tên miền phụ của tên miền đã nhập
Michael Mrozek 22/12/12

1

Từ trang man của dnsmasq (cho - máy chủ, nhưng cũng áp dụng cho --address):

Các tên miền cụ thể khác được ưu tiên hơn các tên miền ít cụ thể hơn, vì vậy: --server = / google.com / 1.2.3.4 --server = / www.google.com / 2.3.4.5 sẽ gửi truy vấn cho * .google.com tới 1.2. 3.4, ngoại trừ * www.google.com, sẽ chuyển đến 2.3.4.5

Vì vậy, giải pháp duy nhất tôi có thể thấy là thay vào đó thêm các bản ghi riêng lẻ cho mỗi tên miền phụ cần thiết. Rõ ràng là không lý tưởng, nhưng là dnsmasq tốt nhất có thể cung cấp tại thời điểm này (mà tôi có thể tìm thấy).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.