Làm thế nào để bạn cấu hình máy tính để bàn cho một địa chỉ IP tĩnh?


24

Theo mặc định, Ubuntu sử dụng DHCP và Gnome NetworkManger để định cấu hình giao diện. Điều này không tối ưu trong nhiều trường hợp.

Làm cách nào để định cấu hình máy tính để bàn cho địa chỉ IP tĩnh áp dụng cho tất cả người dùng?

Nền tảng bổ sung : Đối với 99,9% người dùng, mục nhập DHCP tĩnh có lẽ là giải pháp đơn giản nhất, tuy nhiên tôi đã tìm thấy xung đột với mythtv-backgroundquy trình và mọi thay đổi đối với giao diện eth0. Nếu giao diện được đưa lên / xuống sau khi huyền thoại đang chạy, nó sẽ treo quá trình (cũng đã phá vỡ hệ thống treo). Vì vậy, câu hỏi của tôi thực sự cần một địa chỉ IP tĩnh , nơi giao diện được đưa ra với một IP đã biết và duy trì vĩnh viễn.


2
Là một lưu ý phụ, bạn có thể sử dụng đặt chỗ DHCP trong bộ định tuyến của mình, nó sẽ dành IP cho máy tính của bạn bằng cách xác định nó bằng địa chỉ MAC của NIC và điều này sẽ thực sự hoạt động như thể một IP tĩnh được đặt.
LFC_fan

1
cảm ơn mẹo tốt cho ai đó chỉ cần tìm địa chỉ IP nhất quán
cmcginty

Câu trả lời:


20

Nhấp chuột phải vào nm, chọn Chỉnh sửa kết nối ... tìm giao diện của bạn, nhấp Chỉnh sửa ... , nhấp vào Cài đặt IPv4 , chọn Thủ công và định cấu hình giao diện của bạn.

Một thay thế sẽ là chỉnh sửa / etc / mạng / giao diện . một cấu hình ví dụ sẽ là:

auto eth0
iface eth0 inet static
   address 192.168.1.1
    netmask 255.255.255.0
    gateway 192.168.1.1

sau đó chạy

/etc/init.d/networking restart

Hãy nhớ rằng điều này sẽ hủy kích hoạt nm cho giao diện này và bạn sẽ phải xóa (hoặc không chú ý) các mục để kích hoạt lại nm.

Chỉnh sửa (xem bài đăng của Casey): Bạn cũng phải đặt DNS sau khi chỉnh sửa / etc / network / giao diện:

Đặt một hoặc nhiều máy chủ tên mong muốn trong /etc/resolv.conf:

máy chủ tên 192.168.1.1


sau khi 'khởi động lại mạng', chỉ có giao diện lo xuất hiện
cmcginty

2
Tên giao diện ( eth0trong ví dụ của sBlatt) có thể khác trên PC của bạn: eth0là tên thông thường cho giao diện ethernet có dây đầu tiên ; không có tiêu chuẩn để đặt tên giao diện không dây. Lệnh ip link showsẽ hiển thị một danh sách các giao diện mạng, cùng với các tham số liên quan của chúng.
Riccardo Murri

Ngoài ra, sau khi nhấp chuột phải vào trình quản lý mạng và chọn "Chỉnh sửa kết nối", chọn xem nó sẽ có dây hay không dây, sau đó nhấp vào "Thêm". Sau khi thêm IP tĩnh như mong muốn, hãy đóng tất cả các hộp thoại rồi nhấp chuột trái vào biểu tượng trình quản lý mạng. Bây giờ bạn sẽ có tùy chọn "Auto Eth0" là DHCP và kết nối bạn đã thêm thủ công. Bạn có thể thực hiện việc này nhiều lần, xây dựng danh sách các địa chỉ IP tĩnh khác nhau cho từng vị trí hoặc hoàn cảnh bạn có thể tìm thấy chính mình.
Scaine

@Riccardo, vâng giao diện của tôi là eth0. Như tôi đã nói, chỉ thực hiện các thay đổi trong giao diện không phải là giải pháp hiệu quả đối với tôi
cmcginty

@Scain, những thay đổi trong trình quản lý mạng có áp dụng cho tất cả người dùng không? Vấn đề của tôi là việc chuyển đổi người dùng sẽ đưa giao diện xuống và sao lưu. Đó không phải là thực sự tĩnh.
cmcginty

5

Cập nhật /etc/networking/interfacesđể đặt địa chỉ tĩnh:

auto eth0
iface eth0 inet static
    address 192.168.0.10
    netmask 255.255.255.0
    gateway 192.168.0.1

Đặt một hoặc nhiều máy chủ tên mong muốn trong /etc/resolv.conf:

nameserver 192.168.0.1

Bạn phải ngăn người quản lý mạng gnome cố gắng chiếm quyền điều khiển eth0kết nối:

sudo apt-get remove network-manager network-manager-gnome

Gán địa chỉ IP tĩnh bằng cách khởi động lại hệ thống con mạng:

sudo invoke-rc.d networking restart

5
Đừng xóa trình quản lý mạng! Bạn có nguy cơ kết thúc không có kết nối internet, nếu bạn mắc một số lỗi trong việc thiết lập IP tĩnh (và bạn không thể sửa chúng).
Riccardo Murri

1
Bạn có thể yêu cầu NetworkManager không tự động đưa giao diện lên (nhấp chuột phải -> Chỉnh sửa kết nối ... -> chọn một -> Chỉnh sửa ... -> nhấp vào hộp kiểm Kết nối tự động ); bằng cách này, bạn vẫn có thể cài đặt trình quản lý mạng và kích hoạt giao diện thủ công thông qua ifup/ifdown
Riccardo Murri

2
Ngoài ra, bình luận của tôi là có để cảnh báo người dùng với cùng một vấn đề rằng loại bỏ trình quản lý mạng là một lộ trình rủi ro. Bạn rõ ràng có thể quản lý kết nối mạng của bạn và khắc phục sự cố; những độc giả khác của câu hỏi này có thể không ...
Riccardo Murri

Không nên /etc/networking/interfaces/etc/network/interfaces?
CJBS

1

Nếu bạn có một bộ định tuyến nhỏ đăng nhập vào nó, (giống như http://192.168.1.1 từ trình duyệt của bạn), hãy ghi lại các địa chỉ máy chủ DNS hiện tại. Reserver thêm một địa chỉ IP từ DHCP, (giống như 192.168.1.200-192.168.1.210) hoặc vô hiệu hóa tất cả DHCP cùng nhau.

Từ menu Ubuntu: Hệ thống -> Tùy chọn -> Kết nối mạng -> Tự động eth0 -> chỉnh sửa -> Cài đặt IPV4 -> Thay đổi thành Thủ công -> thêm ip, (giống như 192.168.1.200 những gì bạn đã lưu trữ lại ở trên), netmask 255.255.255.0 ,, và bộ định tuyến bên trong địa chỉ cho tuyến mặc định, (giống như 192.168.1.1 những gì bạn đã sử dụng để đăng nhập vào nó) -> Nhập địa chỉ máy chủ DNS bạn đã ghi ở dưới cùng của cửa sổ.


Tôi đã cập nhật câu hỏi của mình một chút để giải thích tại sao giải pháp này không hiệu quả với tôi. Tôi cần giao diện để ở lại vĩnh viễn.
cmcginty

Nó sẽ luôn xuất hiện @ địa chỉ này khi bạn khởi động, (trong ví dụ này 192.168.0.200), và duy trì vĩnh viễn. Bộ định tuyến của bạn sẽ không thiết lập nó nữa thông qua DHCP. Nó được mã hóa cứng vào máy tính.

0

1) kiểm tra giao diện nào sẽ được cấu hình, giả sử giao diện bạn muốn thay đổi là eth0trong trường hợp này:

$ ip addr

2) mở và chỉnh sửa /etc/network/interface:

$ sudo gedit /etc/network/interface

3) thêm các dòng sau vào tập tin /etc/network/interface:

auto eth0
iface eth0 inet static
address 192.168.1.22
netmask 255.255.255.0
gateway 192.168.1.1

3) khởi động lại giao diện của bạn bằng lệnh ifdownifup:

$ sudo ifdown --force eth0
$ sudo ifup --force eth0

PS: sử dụng $ sudo systemctl restart networkinghoặc $ sudo ifup eth0 có thể không hoạt động khi các công cụ mạng khác đang được sử dụng, vui lòng kiểm tra Không thể ifdown eth0 (giao diện chính)

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.