天天看點

Linux網絡配置檔案子網路遮罩、網關、等參數詳解及應用示例

作者:運維木子李

子網路遮罩、網關等參數的詳細說明

在Ubuntu 20.04中,網絡配置檔案的位置是/etc/netplan/目錄下的.yaml檔案。下面是對子網路遮罩、網關等參數的詳細說明,并附帶一個在Ubuntu 20.04中的示例配置:

  • 子網路遮罩(Subnet Mask):子網路遮罩用于确定一個IP位址的網絡部分和主機部分。它是一個32位的二進制數,通常以點分十進制表示,如255.255.255.0。子網路遮罩中的“1”表示對應的位是網絡部分,而“0”表示對應的位是主機部分。
  • 網關(Gateway):網關是連接配接本地網絡和其他網絡之間的裝置。它通常是一個路由器,用于将資料包從本地網絡發送到其他網絡。網關的IP位址在本地網絡中必須是唯一的,而且網關的IP位址必須與本地網絡的IP位址在同一個子網中。
  • IP位址(IP Address):IP位址是在TCP/IP網絡中用于唯一辨別裝置的位址。它由四個八位的數字組成,每個數字的範圍是0-255,例如192.168.1.10。IP位址分為網絡部分和主機部分,子網路遮罩用于确定它們的邊界。
  • DNS伺服器(DNS Server):DNS伺服器用于将域名解析為對應的IP位址。它是在網絡中提供域名解析服務的伺服器。在網絡配置檔案中,可以指定一個或多個DNS伺服器的IP位址,以便系統可以正确解析域名。

網絡配置檔案中常見參數的詳細解釋

在Ubuntu Server 20.04 LTS中,網絡配置檔案通常位于/etc/netplan/目錄下,并以.yaml為擴充名。這些配置檔案使用Netplan工具進行管理和應用。

以下是網絡配置檔案中常見參數的詳細解釋:

  • network:指定網絡配置的主要部分。
  • version:指定Netplan配置檔案的版本号,通常為2。
  • ethernets:定義以太網接口的配置。
  • wifis:定義Wi-Fi接口的配置。
  • renderer:指定網絡管理器的類型,如networkd或NetworkManager。
  • dhcp4:指定是否使用DHCP擷取IPv4位址。設定為true表示使用DHCP,設定為false表示使用靜态IP。
  • dhcp6:指定是否使用DHCP擷取IPv6位址。
  • addresses:指定靜态IP位址和子網路遮罩。例如,addresses: [192.168.1.10/24]将接口的IP位址設定為192.168.1.10,子網路遮罩為24位(255.255.255.0)。
  • gateway4:指定IPv4網關的IP位址。
  • gateway6:指定IPv6網關的IP位址。
  • nameservers:指定DNS伺服器的IP位址。可以指定一個或多個DNS伺服器。例如,nameservers: [8.8.8.8, 8.8.4.4]将設定兩個DNS伺服器位址為8.8.8.8和8.8.4.4。

networkd 和NetworkManager的差別和聯系

networkd和NetworkManager是兩種常見的網絡管理器,用于配置和管理網絡連接配接。它們在功能、用途和工作方式上有一些差別和聯系。

差別:

  1. 功能和複雜性:NetworkManager提供了更多進階功能和靈活性,例如自動連接配接、連接配接優先級、無線熱點、移動寬帶、VPN等。相比之下,networkd是一個更基本、更輕量級的網絡管理器,适用于簡單的網絡配置和伺服器環境。
  2. 使用者界面:NetworkManager提供了圖形化的使用者界面,使得使用者可以友善地通過系統托盤或應用程式進行網絡配置。而networkd主要通過指令行工具進行配置,需要在配置檔案中手動編輯網絡設定。
  3. 依賴關系:NetworkManager較為複雜,依賴許多其他軟體包和庫。而networkd是systemd的一部分,作為其網絡配置的元件,是以與systemd其他元件有較強的內建性。

聯系:

  1. 相容性:NetworkManager和networkd都能夠管理和配置以太網、Wi-Fi、移動寬帶等各種類型的網絡連接配接。它們都支援IPv4和IPv6協定。
  2. 配置檔案:NetworkManager和networkd都使用配置檔案來定義網絡設定。配置檔案的格式和文法略有不同,但都提供了靈活的選項來配置網絡接口、IP位址、子網路遮罩、網關、DNS伺服器等。
  3. 共存:在某些情況下,NetworkManager和networkd可以同時存在于同一台計算機上,可以根據需要選擇使用哪個網絡管理器。

綜上所述,NetworkManager适用于桌面環境和需要更進階網絡功能的情況,而networkd适用于伺服器環境或對網絡配置要求較簡單的場景。具體選擇哪個網絡管理器取決于你的需求和偏好。

使用networkd和NetworkManager作為網絡管理器示例

以下是針對Ubuntu Server 20.04 LTS的示例網絡配置檔案,分别使用networkd和NetworkManager作為網絡管理器的例子:

使用networkd作為網絡管理器的示例配置檔案

# /etc/netplan/01-netcfg.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: false
      addresses:
        - 192.168.1.10/24
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4]           

上述配置檔案禁用了DHCP,設定了靜态IP位址為192.168.1.10/24,網關為192.168.1.1,DNS伺服器為8.8.8.8和8.8.4.4。

使用NetworkManager作為網絡管理器的示例配置檔案:

# /etc/netplan/01-netcfg.yaml
network:
  version: 2
  renderer: NetworkManager
  ethernets:
    eth0:
      dhcp4: true           

上述配置檔案啟用了DHCP,使接口通過DHCP自動擷取IPv4位址。

請注意,在修改網絡配置檔案後,需要使用sudo netplan apply指令使配置生效。對于NetworkManager,你可能需要在系統中安裝相應的軟體包。使用以下指令安裝:

sudo apt update
sudo apt install network-manager           

安裝完成後,你可以使用sudo systemctl start NetworkManager指令啟動NetworkManager服務,并使用sudo systemctl enable NetworkManager指令設定為系統啟動時自動啟動。

繼續閱讀