Làm cách nào để bật bộ đệm ẩn DNS trong dnsmasq do NetworkManager kiểm soát?


Câu trả lời:


10

Trong Ubuntu 12.10, bạn có thể kích hoạt bộ đệm của phiên bản dnsmasq do NetworkManager kiểm soát bằng cách đặt dòng

cache-size=1000

(với số lượng tên ưa thích của bạn thay vì 1000) trong một tệp mới trong /etc/NetworkManager/dnsmasq.d/. Để kích hoạt thay đổi này, bạn phải làm

sudo stop network-manager
sudo killall dnsmasq
sudo start network-manager

hoặc khởi động lại.


Cảm ơn những thông tin của bạn. Đối với Ubuntu 16.04 (và 15.10 kể từ khi systemd được giới thiệu), hãy sử dụng "sudo dừng / bắt đầu quản lý mạng dịch vụ" thay vì "sudo stop / start quản lý mạng"
Fumisky Wells

Mặc dù nó vẫn hoạt động, nhưng sử dụng công cụ systemd thì nó phải là:sudo systemctl stop NetworkManager
goetzc

4

Tôi đã có thể kích hoạt bộ đệm ẩn DNS trong Linux Mint 13 (dựa trên Ubuntu 12.04) bằng phương pháp được mô tả trong câu trả lời đầu tiên. Tôi đã tạo một tệp /etc/NetworkManager/dnsmasq.d/cachednschứa dòng cache-size=100, sau đó khởi động lại trình quản lý mạng. Mặc dù dnsmasq được trình quản lý mạng thực thi với mã hóa cứng --cache-size=0trên dòng lệnh của nó, đặt kích thước bộ đệm trong tệp cấu hình sẽ ghi đè giá trị đó. Bạn có thể xác minh rằng nó hoạt động bằng cách làm điều này:

sudo killall -USR1 dnsmasq
tail /var/log/syslog

Bạn sẽ thấy một dòng trông như thế này trong syslog, hiển thị kích thước bộ đệm:

dnsmasq[17808]: cache size 100, 0/2 cache insertions re-used unexpired cache entries.

Tôi đã tự hỏi làm thế nào mã hóa cứng --cache-size = 0 của người quản lý mạng bị ảnh hưởng, nhưng bài đăng của bạn làm cho tôi rõ ràng. Cảm ơn bạn!
Fumisky Wells

1

Tôi không muốn nâng cấp từ 12.04, nhưng vẫn muốn dnsmasq được quản lý bởi NetworkManager, nhưng như câu trả lời khác đã nói, --cache-size = 0 được mã hóa cứng và không thể thay đổi với cấu hình.

Vì vậy, những gì tôi đã làm là sau đây, như root:

mv /usr/sbin/dnsmasq /usr/sbin/dnsmasq.real

và sau đó tạo một tệp mới, / usr / sbin / dnsmasq với nội dung sau:

#!/bin/bash
args=$(echo "$@" | sed 's/--cache-size=0/--cache-size=1000/')
/usr/sbin/dnsmasq.real $args

đảm bảo bạn chmod +x /usr/sbin/dnsmasqvà thay đổi kích thước bộ đệm từ 1000 thành bất cứ điều gì bạn muốn, hãy tận hưởng bản phát hành LTS của bạn với bộ đệm DNS!


0

trong 12.04 dnsmasq được NetworkManager khởi động với tham số được mã hóa cứng (tức là không thể cấu hình) --cache-size = 0 .

các trang dành cho dnsmasq cho biết việc đặt kích thước bộ đệm thành 0 sẽ vô hiệu hóa bộ đệm. Nếu bạn muốn kích hoạt bộ đệm, có lẽ bạn sẽ phải vô hiệu hóa plugin dnsmasq cho NetworkManager để ngăn NetworkManager khởi động dnsmasq và bắt đầu phiên bản dnsmasq của riêng bạn với kích thước bộ đệm lớn hơn 0.

Tại đây bạn có thể đọc cách tắt dnsmasq-plugin cho NetworkManager: https://askubfox.com/a/131422/71057


0

Để kích hoạt lại bộ đệm (với phiên bản NetworkManager có thư mục /etc/NetworkManager/dnsmasq.d), thực sự đủ để thả một tệp trong thư mục đó với nội dung "cache-size = X" (với X là 150 cho dnsmasq mặc định sẽ có). Các tập tin trong đó ghi đè lên các tham số được mã hóa cứng được đưa ra trên dòng lệnh.


0

Trong Ubuntu 14.04, tôi phải chỉnh sửa /etc/default/dnsmasqvà thiết lậpENABLED=1

Tôi cũng đặt cache-size=1000ở đó và trong tất cả các tập tin cấu hình dnsmasq khác mà tôi 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.