Ubuntu Desktop 12.04 sử dụng dnsmasq để thực hiện tra cứu DNS, nhưng nó không được cấu hình để lưu trữ các kết quả này. .
Ubuntu Desktop 12.04 sử dụng dnsmasq để thực hiện tra cứu DNS, nhưng nó không được cấu hình để lưu trữ các kết quả này. .
Câu trả lời:
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.
sudo systemctl stop NetworkManager
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/cachedns
chứ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=0
trê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 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/dnsmasq
và 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!
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
Để 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.