Làm cách nào để buộc NetworkManager cập nhật /etc/resolv.conf?


14

Nếu tôi thêm một máy chủ DNS mới bằng cách sử dụng nmcli connection modify eth0 +ipv4.dns 8.8.8.8, tôi vẫn phải cập nhật /etc/resolv.confcho trình phân giải để nhận các thay đổi, phải không? Vì vậy, làm thế nào để tôi buộc cập nhật?

Cách duy nhất tôi tìm thấy là khởi động lại dịch vụ mạng : /etc/init.d/network restart. Có một cách ít xâm lấn hơn - một nmclimệnh lệnh, có lẽ?


Bạn muốn NetworkManager cập nhật nó với cái gì?
Konrad Gajewski

Đã thêm một số làm rõ cho câu hỏi.
Mihai

Vì nmcli của tôi không có lệnh sửa đổi này, tôi chỉ có thể đoán :) Hãy thử: giải quyết -u
Konrad Gajewski

Câu trả lời:


6

dựa trên http://www.certdepot.net/rhel7-configure-ipv4-addresses/

nmcli connection up eth0 

Chạy sau khi gọi mod, làm việc cho tôi.

PS, bạn có thể sử dụng "kết nối nmcli -p hiển thị eth0" để xem cài đặt được cấu hình và hoạt động


Lưu ngón tay của bạn! connectioncó thể được viết tắt, tất cả các cách để c.
Michael Hampton

Thật thú vị, bài viết trợ giúp của RH cho thấy nmcli c reloadkhông hoạt động để thay đổi các mục DNS.
Rots

1
  • Hiển thị thiết bị có sẵn để cấu hình: nmcli c s

    Bạn sẽ cần TÊN hoặc UUID của danh sách đó. Giả sử tên kết nối là eth0.

  • Hiển thị cài đặt DNS IPv4 hiện tại của eth0: nmcli c s eth0 | grep ipv4.dns:

  • Đặt cài đặt DNS IPv4 thành các mục DNS của Google 8.8.8.8 và 8.8.4.4: sudo nmcli c m eth0 ipv4.dns "8.8.8.8 8.8.4.4"
  • Lưu các thay đổi vào các tệp hệ thống (như /etc/resolv.conf, v.v.) với: sudo nmcli c up eth0

Tặng kem:

  • Làm toàn bộ cho một máy chủ từ xa qua ssh: ssh remote-server 'sudo nmcli c m eth0 ipv4.dns "8.8.8.8 8.8.4.4" && sudo nmcli c up eth0'

0

Thêm phần sau vào tệp cấu hình giao diện ( /etc/sysconfig/network-scripts/ifcfg-ethX):

PEERDNS=yes
DNS1=1.2.3.4
DNS2=1.2.3.4
NM_CONTROLLED=yes

đưa giao diện lên:

ifup ethX

0

Để làm như vậy, bạn sẽ cần xác định giao diện mạng của mình (ví dụ eth0)

# nmcli  conn
NAME  UUID                                  TYPE            DEVICE
eth0  74315f7c-1573-4150-9c0e-e06ad28cac95  802-3-ethernet  eth0
#

# nmcli conn edit eth0

===| nmcli interactive connection editor |===

Editing existing '802-3-ethernet' connection: 'eth0'

Type 'help' or '?' for available commands.
Type 'describe [<setting>.<prop>]' for detailed property description.

You may edit the following settings: connection, 802-3-ethernet (ethernet), 802-1x, ipv4, ipv6, dcb
nmcli> print ipv4.dns-search
ipv4.dns-search: mydomain.linux.com
nmcli>
nmcli> set ipv4.dns-search mylinuxdomain.com,anotherdomain.com
nmcli>
nmcli> save permanent

Sau đó khởi động lại mạng của bạn. Tôi sử dụng nmcli để làm như vậy: 1. Để đưa xuống

# nmcli conn down eth0

2. Để đưa lên

# nmcli conn up eth0

Bạn làm không cần phải mang theo xuống kết nối. Chỉ cần làm một nmcli conn up eth0để tiết kiệm /etc/resolv.conf.
MadMike
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.