在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地址和子網掩碼。常用命令有兩種:
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)。
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(若有網關,應響應)。
六、注意事項¶
- IP地址唯一性:同一網段內不能有重複IP,否則設備間會衝突。
- 子網掩碼匹配:IP地址和子網掩碼需對應,例如
192.168.1.100不能搭配255.255.0.0(網絡部分爲192.168,主機部分1.100,若需跨網段通信需正確配置)。 - 網卡名準確性:不同系統生成的網卡名可能不同(如
eth0/ens33/ens160),務必用ip addr確認後再修改配置文件。 - 權限問題:修改網絡配置需管理員權限,使用
sudo或root用戶執行命令。
通過以上步驟,你已掌握Linux服務器IP地址和子網掩碼的基本配置方法。後續可繼續學習網關、DNS等更復雜的網絡配置。