在Linux服務器中,配置正確的IP地址和子網掩碼是實現網絡通信的基礎。無論是連接到局域網還是公網,IP地址就像設備的“門牌號”,而子網掩碼則幫助區分“小區地址”(網絡部分)和“具體房間”(主機部分)。下面我們一步步瞭解如何配置它們。

一、IP地址與子網掩碼是什麼?

IP地址:由32位二進制數組成,通常以“點分十進制”形式表示(如 192.168.1.100),分爲網絡部分和主機部分。
子網掩碼:也是32位二進制數,用於告訴系統“IP地址中哪部分是網絡地址,哪部分是主機地址”。它的二進制表示中,“1”代表網絡部分,“0”代表主機部分(例如 255.255.255.0)。

舉個例子:
- IP地址:192.168.1.100
- 子網掩碼:255.255.255.0
- 二進制拆解:
IP:11000000.10101000.00000001.01100100
掩碼:11111111.11111111.11111111.00000000
網絡部分:前3個字節(192.168.1),主機部分:最後1個字節(100)。

二、查看當前網絡配置

在配置前,建議先確認當前IP地址和子網掩碼。常用命令有兩種:

  1. ip addr(推薦,現代Linux常用)
    直接執行命令:
   ip addr

輸出中會顯示所有網卡信息,例如:

   2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
       link/ether 00:11:22:33:44:55 brd ff:ff:ff:ff:ff:ff
       inet 192.168.1.50/24 brd 192.168.1.255 scope global dynamic noprefixroute eth0
           valid_lft 86399sec preferred_lft 86399sec
       inet6 fe80::211:22ff:fe33:4455/64 scope link noprefixroute 
           valid_lft forever preferred_lft forever

其中 eth0 是網卡名,inet 192.168.1.50/24 表示IP地址爲 192.168.1.50,子網掩碼爲 /24(即 255.255.255.0)。

  1. ifconfig(傳統命令,部分系統需安裝)
    若系統未預裝 ip 命令,可使用 ifconfig(需先 yum install net-tools 安裝):
   ifconfig

輸出中 eth0 行的 inet addr:192.168.1.50 Bcast:192.168.1.255 Mask:255.255.255.0 即爲IP和子網掩碼。

三、臨時設置IP地址與子網掩碼

臨時設置僅對當前會話有效,重啓網絡服務或服務器後會失效(適合測試)。

1. 使用 ip 命令(推薦)
# 格式:ip addr add <IP地址>/<子網掩碼前綴> dev <網卡名>
ip addr add 192.168.1.100/24 dev eth0
  • /24 等價於子網掩碼 255.255.255.0(前綴長度24位)。
  • 若需刪除臨時配置,用:
  ip addr del 192.168.1.100/24 dev eth0
2. 使用 ifconfig 命令
# 格式:ifconfig <網卡名> <IP地址> netmask <子網掩碼>
ifconfig eth0 192.168.1.100 netmask 255.255.255.0

四、永久設置IP地址與子網掩碼

臨時設置僅用於測試,實際生產環境需永久配置,不同Linux發行版方法不同。

1. CentOS/RHEL 7+(使用 network-scripts
  • 步驟1:確認網卡名
    ip addr 查看網卡名(如 ens33)。

  • 步驟2:編輯網卡配置文件
    配置文件路徑:/etc/sysconfig/network-scripts/ifcfg-<網卡名>(如 ifcfg-ens33)。
    vim 打開並修改以下參數:

  TYPE=Ethernet
  BOOTPROTO=static  # 設爲static表示靜態IP
  NAME=ens33       # 與文件名一致(部分系統自動生成)
  DEVICE=ens33     # 網卡名
  IPADDR=192.168.1.100  # IP地址
  NETMASK=255.255.255.0 # 子網掩碼(或PREFIX=24,等價)
  GATEWAY=192.168.1.1    # 網關(可選,若需上網)
  ONBOOT=yes       # 開機自動啓用
  • 步驟3:重啓網絡服務
  systemctl restart network
2. Ubuntu/Debian 18.04+(使用 netplan
  • 步驟1:查看網卡名
    ip addr 確認網卡名(如 ens33)。

  • 步驟2:編輯Netplan配置文件
    配置文件路徑:/etc/netplan/01-netcfg.yaml(文件名可自定義,以數字開頭)。
    vim 打開並添加以下內容:

  network:
    version: 2
    renderer: networkd
    ethernets:
      ens33:  # 網卡名
        dhcp4: no  # 禁用DHCP,使用靜態IP
        addresses: [192.168.1.100/24]  # IP地址/子網掩碼前綴
        gateway4: 192.168.1.1         # 網關(可選)
        nameservers:
          addresses: [8.8.8.8, 8.8.4.4] # DNS服務器(可選,若需上網)
  • 步驟3:應用配置
  sudo netplan apply

五、驗證配置是否成功

設置完成後,可通過以下方式驗證:
1. 查看IP地址ip addr 確認IP和子網掩碼是否生效。
2. 測試網絡連通性
- ping 本地IP:ping 192.168.1.100(應顯示響應)。
- ping 同網段設備:ping 192.168.1.50(若另一設備存在,應響應)。
- ping 網關:ping 192.168.1.1(若有網關,應響應)。

六、注意事項

  1. IP地址唯一性:同一網段內不能有重複IP,否則設備間會衝突。
  2. 子網掩碼匹配:IP地址和子網掩碼需對應,例如 192.168.1.100 不能搭配 255.255.0.0(網絡部分爲 192.168,主機部分 1.100,若需跨網段通信需正確配置)。
  3. 網卡名準確性:不同系統生成的網卡名可能不同(如 eth0/ens33/ens160),務必用 ip addr 確認後再修改配置文件。
  4. 權限問題:修改網絡配置需管理員權限,使用 sudoroot 用戶執行命令。

通過以上步驟,你已掌握Linux服務器IP地址和子網掩碼的基本配置方法。後續可繼續學習網關、DNS等更復雜的網絡配置。

小夜