Điểm:0

How do I set a static IP in Ubuntu 20.04.3 LTS?

lá cờ pk

I'm trying to set up a lab computer as a ssh server following this guide. One of the steps is setting up a static IP address. So, I was glad to find this answer. Following it, I created /etc/netplan/50-cloud-init.yaml file, pasted

network:
    ethernets:
        enp0s3:
            addresses: [desired_ip_address/24]
            gateway4: my_router_ip_address
            dhcp4: no
            nameservers:
              addresses: [1.1.1.1,8.8.8.8]
            optional: true
    version: 2

and run

sudo ip addr flush my_ethernet_num
sudo systemctl restart networking.service

where my_ethernet_num == enp9s0. Buuuut, after this ip a showed no ip address for the Ethernet:

svyatoslav@svyatoslav-desktop ~> ip a                                    (base) 
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp9s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether a8:a1:59:4b:e8:bb brd ff:ff:ff:ff:ff:ff
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
    link/ether 02:42:f3:38:2f:33 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
       valid_lft forever preferred_lft forever

and sudo lshw -C network yielded *-network DISABLED. Then I tried to use that guide (section 'Static IP Address Assignment'). I created /etc/netplan/99_config.yaml, pasted the necessary code, run sudo netplan apply. Nothing changed except that I STOPPED SEEING wired connections in network settings... I tried the answer from here, and the 'Wired' section returned. But I can't change anything (for example, I can't pick 'Manual' option) screenshot.

So, the questions are: how can I return the ability of changing it (in order to follow one more guide), or is there any other solution that will succeed in setting static ip address?...

--EDIT from 12/05/2021--

Here are all of my .yaml files showed by ls -al /etc/netplan:

01-network-manager-all.yaml:

# Let NetworkManager manage all devices on this system
network:
  version: 2
  renderer: NetworkManager

50-cloud-init.yaml:

network:
  ethernets:
    enp0s3:
      adresses: [192.168.0.116/24]
      gateway: 93.175.20.231
      dhcp4: no
      nameservers:
        addresses: [1.1.1.1,8.8.8.8]
      optional: true
  version: 2

99_config.yaml:

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      addresses:
        - 192.168.0.116/24
      gateway4: 192.168.0.1
      nameservers:
        search: [mydomain, otherdomain]
        addresses: [192.168.0.1, 8.8.8.8]
raj avatar
lá cờ cn
raj
Có lẽ bạn nên xóa/hoàn nguyên tất cả các thay đổi mà bạn đã thực hiện để quay lại cấu hình ban đầu. Sau đó, chỉ cần sử dụng tùy chọn "Thủ công" từ GUI. Không cần phải lộn xộn với các tập tin cấu hình theo cách thủ công.
TopCoder2000 avatar
lá cờ pk
@raj, cảm ơn bạn đã bình luận! Giá như tôi biết cách hoàn nguyên tất cả các thay đổi... Nhân tiện, sau khi khởi động lại, tôi chợt phát hiện ra rằng mình có thể thực hiện các thay đổi đối với cài đặt! Vì vậy, tôi sẽ thử tùy chọn GUI và viết về kết quả :)
heynnema avatar
lá cờ ru
Tại sao .yaml của bạn sử dụng enp0s3, khi giao diện của bạn là enp9s0? Bạn đang sử dụng cài đặt Máy chủ hay Máy tính để bàn?
TopCoder2000 avatar
lá cờ pk
@heynnema, vì nó nằm trong câu trả lời cho ['Làm cách nào để đặt IP tĩnh trong Ubuntu?'](https://askubuntu.com/questions/766131/how-do-i-set-a-static-ip -in-ubuntu/767693#767693). Như chúng ta có thể thấy, enp0s25 được sử dụng trong câu hỏi, nhưng sau đó enp0s3 được sử dụng trong câu trả lời, vì vậy tôi nghĩ rằng nó luôn phải là enp0s25. > Bạn đang sử dụng cài đặt Máy chủ hay Máy tính để bàn? Tôi muốn sử dụng bản cài đặt Máy tính để bàn, nhưng tôi không biết cụ thể mình đang sử dụng bản cài đặt nào... Có sự khác biệt nào không? Tôi đã cố gắng làm theo cài đặt Desktop nhưng tôi có thể bị nhầm lẫn.
heynnema avatar
lá cờ ru
@TopCoder2000 Mạng của bạn có thể không hoạt động với enp0s3 trong tệp .yaml. Nó cần phải là enp9s0. Nhưng nếu bạn đang sử dụng bản cài đặt Máy tính để bàn, thì .yaml của bạn vẫn sai. Bản cài đặt Máy tính để bàn có GUI, bản cài đặt Máy chủ chỉ có CLI. Ngoài ra, câu trả lời tự chấp nhận của bạn không thực sự có nhiều ý nghĩa.
heynnema avatar
lá cờ ru
@TopCoder2000 Bạn có bao nhiêu tệp .yaml trong /etc/netplan? Cho tôi xem `ls -al /etc/netplan`.
TopCoder2000 avatar
lá cờ pk
Cảm ơn bạn đã sẵn lòng giúp đỡ, @heynnema! > Ngoài ra, câu trả lời tự chấp nhận của bạn không thực sự có nhiều ý nghĩa Tại sao? Khi nào tôi nên chấp nhận câu trả lời sau đó? > Bạn có bao nhiêu tệp .yaml trong /etc/netplan? Đây là đầu ra `tổng 28 drwxr-xr-x 2 root root 4096 Ð½Ð¾Ñ 29 11:45 ./ drwxr-xr-x 153 root root 12288 дек 5 14:15 ../ -rw-r--r-- 1 root root 104 авг 5 2019 01-network-manager-all.yaml -rw-r--r-- 1 root root 204 Ð½Ð¾Ñ 29 11:45 50-cloud-init.yaml -rw-r--r-- 1 root root 239 Ð½Ð¾Ñ 29 11:07 99_config.yaml` P. S. làm cách nào để tạo một dòng mới trong nhận xét?..
heynnema avatar
lá cờ ru
@TopCoder2000 À! Bạn có 3 tệp .yaml... và tôi cá là chúng xung đột với nhau. Chỉnh sửa câu hỏi của bạn và cho tôi xem TẤT CẢ các tệp .yaml, KHÔNG CÓ giao dịch biên tập, sau đó tôi có thể đưa ra câu trả lời cho bạn. Bạn không thể tạo một dòng mới trong nhận xét... đó là lý do tại sao dữ liệu như vậy thuộc về bản chỉnh sửa cho câu hỏi của bạn. Câu trả lời của bạn, bên dưới, không trả lời câu hỏi của bạn và giải quyết vấn đề của bạn... đó là lý do tại sao tôi nói nó thực sự vô nghĩa.
TopCoder2000 avatar
lá cờ pk
@heynnema, đã chỉnh sửa :) Có thể dễ dàng giải thích netplan là gì và các tệp .yaml làm gì? Tôi muốn có một sự hiểu biết hời hợt.
heynnema avatar
lá cờ ru
@TopCoder2000 Vui lòng trạng thái...
Điểm:0
lá cờ ru

Chọn MỘT trong hai cấu hình sau...


Cài đặt máy chủ với IP tĩnh...

Xóa /etc/netplan/01-network-manager-all.yaml

Xóa /etc/netplan/50-cloud-init.yaml

Chỉnh sửa /etc/netplan/99_config.yaml để trông CHÍNH XÁC như thế này...

Ghi chú: liên quan đến 192.168.0.116, đảm bảo địa chỉ này nằm ngoài phạm vi DHCP được đặt trong bộ định tuyến của bạn và chưa được sử dụng ở nơi khác.

Ghi chú: Đối với máy chủ định danh DNS, hãy chọn máy chủ từ một nguồn... Google, Cloudflare, OpenDNS, v.v. (tối đa 3).

mạng:
  phiên bản: 2
  trình kết xuất: mạng
  ethernet:
    enp9s0:
      địa chỉ: [192.168.0.116/24]
      cổng4: 192.168.0.1
      máy chủ tên:
        địa chỉ: [192.168.0.1, 8.8.8.8]
      tùy chọn: đúng

Sudo netplan tạo

sudo netplan áp dụng

khởi động lại


Cài đặt máy tính để bàn với IP tĩnh...

Xóa /etc/netplan/50-cloud-init.yaml

Xóa /etc/netplan/99_config.yaml

Chỉnh sửa /etc/netplan/01-network-manager-all.yaml để trông CHÍNH XÁC như thế này...

Ghi chú: Sử dụng GUI của Trình quản lý mạng để thiết lập IP tĩnh cho "Kết nối có dây".

# Để NetworkManager quản lý tất cả các thiết bị trên hệ thống này
mạng:
  phiên bản: 2
  trình kết xuất: Trình quản lý mạng

Sudo netplan tạo

sudo netplan áp dụng

khởi động lại


Ghi chú: Nhìn thấy https://netplan.io/examples/ để biết ví dụ và thông tin thiết kế về netplan.

TopCoder2000 avatar
lá cờ pk
Cảm ơn bạn đã trả lời và các ví dụ về netplan! Bây giờ `ip a` hiển thị đầu ra chính xác. Nhưng làm cách nào để thiết lập IP tĩnh với GUI NetworkManager?
heynnema avatar
lá cờ ru
@TopCoder2000 Thứ nhất, bạn không thể sử dụng cả hai phần trong câu trả lời của tôi cùng một lúc. Đó là phần 1 hoặc phần 2. Nếu bạn đang sử dụng phần 2, thì câu trả lời của tôi là *"Sử dụng GUI Trình quản lý mạng để thiết lập IP tĩnh của bạn cho "Kết nối có dây""*. Xem tab IPv4. Bấm vào nút thủ công. Điền địa chỉ, mặt nạ, cổng và máy chủ DNS, đồng thời tắt DNS Auto.
TopCoder2000 avatar
lá cờ pk
Vâng tôi nhớ! Tôi sẽ chấp nhận nó ngay khi tôi không có bất kỳ câu hỏi nào :) Có, tôi đang sử dụng tùy chọn thứ hai. Nhưng hôm qua bạn cũng đã viết rằng 'IP tĩnh nên được đặt nằm ngoài phạm vi DHCP được đặt trong bộ định tuyến'. Nhưng làm sao tôi biết được bộ đó? Ví dụ: câu trả lời thứ hai từ [tại đây](https://www.quora.com/How-can-I-find-the-number-of-available-IP-addresses-in-my-DHCP) nói rằng chúng tôi phải kiểm tra cấu hình máy chủ DHCP ...
heynnema avatar
lá cờ ru
@TopCoder2000 Bạn phải đăng nhập vào trang quản trị của bộ định tuyến và tìm cài đặt máy chủ DHCP. Đối với IP tĩnh của máy tính, bạn cần chọn một địa chỉ nằm ngoài phạm vi địa chỉ của máy chủ DHCP.
TopCoder2000 avatar
lá cờ pk
À! Giỏi! Cảm ơn!

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.