帮助中心

这里有最新的使用文档和教程

< 返回

Linux系统如何批量添加IP(C网)

2026-09-10 17:52 作者:31IDC 阅读量:2 所属分类:Windows系统

 

在 Linux 系统中批量添加一个 C 类网段(即 `/24`,包含 254 个可用 IP)的 IP 地址,有几种主流方法。具体使用哪种,主要取决于你的系统版本和网络管理工具。

 

### 方法一:使用 `nmcli` 命令(推荐,适用于 RHEL/CentOS 7+ 等)

 

`nmcli` 是现代 Linux 发行版中管理网络连接的强大命令行工具,添加 IP 非常高效。假设你的网卡名是 `eth0`,要添加的网段是 `192.168.1.0/24`,可以执行以下命令:

 

```bash

for i in {1..254}; do

  nmcli connection modify eth0 +ipv4.addresses 192.168.1.$i/24

done

```

 

**关键点**:命令中的 `+` 号表示“追加”IP 地址,而不是覆盖原有配置。你可以先用 `nmcli connection show` 查看你的连接名称(通常是网卡名)。执行完上述命令后,需要重启网络连接使其生效:

 

```bash

nmcli connection up eth0

```

 

如果后续需要删除这些 IP,只需将 `+ipv4.addresses` 换成 `-ipv4.addresses` 再执行一遍循环即可。

 

### 方法二:使用 `ifcfg-*` 配置文件(适用于 RHEL/CentOS 6/7)

 

对于仍在使用传统 `network-scripts` 的系统,可以通过创建 range 配置文件来批量添加。

 

1.  在 `/etc/sysconfig/network-scripts/` 目录下,新建一个文件,例如 `ifcfg-eth0-range0`。

2.  在文件中写入以下内容:

 

    ```

    DEVICE=eth0

    ONBOOT=yes

    BOOTPROTO=static

    IPADDR_START=192.168.1.1

    IPADDR_END=192.168.1.254

    CLONENUM_START=0

    NETMASK=255.255.255.0

    NO_ALIASROUTING=yes

    ```

3.  保存文件后,重启网络服务:`service network restart`。

 

### 方法三:使用 `ip` 命令(临时添加,重启后失效)

 

如果你只是需要临时测试,可以直接使用 `ip` 命令:

 

```bash

for i in {1..254}; do

  sudo ip addr add 192.168.1.$i/24 dev eth0

done

```

 

这个方法会立即生效,但系统重启后配置会丢失。

 

### 方法四:使用 `ifconfig` 命令(临时添加,较老的方法)

 

在一些较旧的系统或习惯用法中,也可以用 `ifconfig` 的别名功能来临时添加:

 

```bash

for i in {1..254}; do

  ifconfig eth0:$i 192.168.1.$i netmask 255.255.255.0 up

done

```

 

**注意**:当子网掩码为 `255.255.255.0` 时,直接使用 `ifconfig eth0:0` 这样的别名方式可能无法正常工作,通常需要将掩码设置为 `255.255.255.255` 才更稳妥,但这会限制同网段通信。因此,更推荐使用 `ip` 命令。

 

### 方法五:使用 Shell 脚本(适用于 Debian/Ubuntu)

 

对于 Debian 或 Ubuntu 系统,可以编写一个脚本,将其配置为在开机时自动运行。你可以在 `/etc/network/interfaces` 文件的 `post-up` 指令中调用该脚本,实现开机自动批量添加 IP。

 

```bash

#!/bin/bash

INTERFACE="eth0"

NETWORK="192.168.1"

for i in {1..254}; do

  ip addr add $NETWORK.$i/24 dev $INTERFACE 2>/dev/null

done

```

 

### 总结与建议

 

| 方法 | 适用场景 | 持久性 | 特点 |

| :--- | :--- | :--- | :--- |

| **`nmcli`** | RHEL/CentOS 7+ 等现代系统 | 永久 | **推荐**,命令简洁,管理方便 |

| **`ifcfg-range`** | 传统 RHEL/CentOS 6/7 | 永久 | 配置文件方式,适合批量管理 |

| **`ip` 命令** | 所有系统,临时测试 | 临时 | 立即生效,重启后失效 |

| **`ifconfig`** | 较旧系统 | 临时 | 老式命令,不推荐在新系统中使用 |

| **Shell 脚本** | Debian/Ubuntu 或自定义 | 视配置而定 | 灵活性高,可实现复杂逻辑 |

 

**操作前请注意**:

- 确保要添加的 IP 地址在你的网络中未被其他设备占用,避免 IP 冲突。

- 批量添加大量 IP 会消耗一定的系统资源,建议根据实际需求操作。

- 在执行任何永久性网络配置更改前,**建议备份原有的配置文件**。

31IDC - 12 年深耕海外 IDC 高端资源