在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等更复杂的网络配置。

小夜