Linux:如何在 Ubuntu 中設置靜態 IP 地址?

Linux:如何在 Ubuntu 中設置靜態 IP 地址?

您的家庭網絡使用 IP 地址在設備之間路由數據,有時當您重新連接到網絡時,設備的地址可能會發生變化。以下是如何為您的 Ubuntu Linux 計算機提供一個在重新啟動後仍然存在的永久 IP 地址。

動態和靜態 IP 地址

家庭網絡上的所有東西,無論是有線連接還是 Wi-Fi,都有一個 IP 地址。IP代表互聯網協議。IP 地址是由三個點分隔的四個數字組成的序列。每個 IP 地址在該網絡中都是唯一的。

IP 地址的作用類似於數字標籤。您的路由器使用這些標籤在正確的設備之間發送數據。通常您的路由器會分配 IP 地址。它知道哪些 IP 地址正在使用,哪些是免費的。當新設備加入網絡時,它會請求一個 IP 地址,而路由器會分配一個未使用的 IP 地址。這稱為 DHCP 或動態主機配置協議。

當設備重新啟動或關閉並再次打開時,它可能會再次獲得其舊 IP 地址,或者可能會被分配一個新 IP 地址。這對於 DHCP 來說是正常的,不會影響您網絡的正常運行。但是,如果您有一台服務器或其他必須能夠通過其 IP 地址訪問的計算機,如果其 IP 地址無法在斷電或重新啟動時倖存下來,您就會遇到問題。

將特定 IP 地址附加到計算機稱為靜態 IP 地址分配。顧名思義,靜態 IP 地址不是動態的,即使計算機關閉再打開也不會改變。

在 Ubuntu 中設置靜態 IP 地址

我們在 Ubuntu 上演示了這種技術,但它應該適用於任何 Linux 發行版。網絡管理器工具於 2004年nmcli發布,因此它應該存在於幾乎所有標準發行版中。

讓我們看一下計算機上已經存在的網絡連接。我們使用connection帶有參數的命令show

nmcli connection show

使用 nmcli 查看網絡連接

這將顯示有關每個連接的一些信息。我們只配置了一個連接。

nmcli 顯示的單個網絡連接詳細信息

輸出比終端窗口寬。這是顯示給我們的信息。

NAME UUID TYPE DEVICE

netplan-enp0s3 1eef7e45-3b9d-3043-bee3-fc5925c90273 ethernet enp0s3

  • 名稱:我們的網絡連接稱為“netplan-enp0s3”。
  • UUID:Linux 用於在內部引用此連接的通用唯一標識符。
  • 類型:這是以太網連接。
  • 設備:此連接使用網絡接口“enp0s3”。這是此計算機中唯一的網卡。

我們可以使用ip該命令找出這台計算機正在使用的 IP 地址。

ip addr

ip addr 命令的輸出顯示計算機的 IP 地址

在輸出中,我們看到條目“enp0s3”,其當前 IP 地址為 192.168.86.117。“/24”是表示此網絡使用子網掩碼 255.255.255.0 的簡寫方式。記下這個數字,我們稍後會用到。

我們需要選擇要設置為靜態 IP 地址的 IP 地址。顯然,您不能使用已被其他設備使用的 IP 地址。一種安全的方法是使用您當前的 IP 地址。我們確定沒有其他人在使用此 IP 地址。

如果我們想使用不同的 IP 地址,請嘗試 ping 它。我們將檢查 IP 地址 192.168.86.128 是否被使用。如果您網絡上的所有其他設備都在使用 DHCP,並且您沒有收到ping對該命令的響應,則可以安全使用。

ping 192.168.86.128

使用 ping 確定 IP 地址是否正在使用中

即使其他設備之前使用過這個 IP 地址,它也會在下次啟動時被分配一個新的 IP 地址。沒有響應 ping 請求。我們準備好繼續設置 192.168.86.128 作為我們新的靜態 IP 地址。

我們還需要知道您的默認網關的 IP 地址,這通常是您的寬帶路由器。我們可以使用ip命令和route選項找到它,我們可以將其縮寫為“r”。

ip r

使用 ip 命令查找默認網關的 IP 地址

以“default”開頭的條目是到默認網關的路由。它的 IP 地址是 192.168.86.1。現在我們可以開始發出命令來設置我們的靜態 IP 地址。

第一個命令很長。

sudo nmcli con add con-name "static-ip"ifname enp0s3 type ethernet ip4 192.168.86.128/24 gw4 192.168.86.1

使用 nmcli 命令創建新連接

從小部分來看,它並不像聽起來那麼糟糕。我們使用sudo. 論據nmcli

  • con:“連接”的縮寫。
  • add:我們要添加一個連接。
  • con-name “static-ip”:我們的新連接的名稱將是“static-ip”。
  • ifname enp0s3:連接將使用網絡接口“enp0s3”。
  • 輸入以太網:我們正在創建一個以太網連接。
  • ip4 192.168.86.128/24:無類域間路由表示法中的 IP 地址和子網掩碼。在這裡,您需要使用您之前寫下的數字。
  • gw4 192.168.86.1:我們要用於此連​​接的網關的 IP 地址。

為了使我們的連接成為有效的連接,我們需要提供更多細節。我們的連接已經存在,所以我們不添加任何東西,我們更改設置,所以我們使用mod 一個參數。我們正在更改的設置是 IPv4 DNS 設置。8.8.8.8 是 Google 的主要公共 DNS 服務器的 IP 地址,8.8.4.4 是 Google 的備用 DNS 服務器。

請注意,“ipv4”中有一個“v”。在前面的命令中,語法是“ip4”,沒有“v”。更改設置時應使用字母“v”,而不是添加連接時。

nmcli con mod "static-ip"ipv4.dns "8.8.8.8,8.8.4.4"

使用 nmcli 命令設置要連接的 DNS 服務器

要使我們的 IP 地址靜態化,我們需要更改 IP 地址獲取其值的方式。默認值為“自動”,這是 DHCP 的設置。我們需要將其設置為“手動”。

nmcli con mod "static-ip"ipv4.method manual

使用 nmcli 命令設置靜態 IP 地址

現在我們可以開始或“啟動”我們的新連接。

nmcli con up "static-ip"ifname enp0s3

使用 nmcli 命令啟動網絡連接

我們還沒有收到任何錯誤報告,這很好。讓我們nmcli再看看我們的聯繫。

nmcli con show

nmcli 顯示的兩個網絡連接的詳細信息

結果如下:

NAME UUID TYPE DEVICE

static-ip da681e18-ce9c-4456-967b-63a59c493374 ethernet enp0s3


netplan-enp0s3 1eef7e45-3b9d-3043-bee3-fc5925c90273 ethernet --

我們的靜態 IP 連接處於活動狀態,並且正在使用設備“enp0s3”。現有的“netplan-enp0s3”連接不再與物理網絡接口相關聯,因為我們將“enp0s3”拉出。

使用 GNOME 桌面和應用程序

單擊系統托盤最右端的圖標以顯示系統菜單,然後單擊有線菜單項。如果您使用的是無線連接,請改為單擊您的 Wi-Fi 網絡的名稱。

將顯示可用的連接。點表示正在使用的內容。我們的新連接是活動連接。單擊有線網絡設置或 Wi-Fi 設置菜單項。

帶有擴展“有線連接”面板的系統菜單

顯示有​​關活動連接的信息。我們可以看到我們的新“靜態 IP”連接具有我們為其設置的 IP 地址、默認網關和 DNS 服務器。您可以通過直接單擊其名稱在可用連接之間切換。

點擊齒輪圖標進入“靜態IP”連接設置。

“設置”應用的“網絡”選項卡中的有線部分

將打開一個對話框。單擊“IPv4”選項卡。

連接設置對話框的 IPv4 選項卡

由於我們已將新 IP 地址設置為靜態,因此選擇了手動單選按鈕。您可以通過選擇“自動 (DHCP)”單選按鈕並單擊綠色的“應用”按鈕將其更改回 DHCP。

要使用設置應用程序創建新連接,請單擊+有線連接列表上方網絡頁面上的“”圖標。

“設置”應用的“網絡”選項卡中的有線部分

將出現一個對話框。我們需要為此連接提供一個名稱。

在新配置文件對話框中命名新連接配置文件

我們稱我們的新連接為“static-2”。單擊“IPv4”選項卡。

在“新建配置文件”對話框中為新的連接配置文件提供 IPv4 連接信息。

選擇手動單選按鈕並填寫地址、網絡掩碼和網關字段。還要填寫 DNS 字段,然後單擊綠色的應用按鈕。注意 DNS 記錄之間的逗號。

我們的新連接列在有線連接面板中。

設置應用程序的網絡選項卡的有線連接部分中新添加的連接。

連接性

使用nmcli命令或 GNOME 桌面和應用程序,您可以非常輕鬆快速地在網絡連接之間切換。

選擇連接配置文件並根據需要在它們之間移動比擁有一個您不斷編輯的配置文件更方便。如果您正在編輯或添加的連接出現問題,您始終可以恢復到現有連接之一。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *