linux系统加多个网卡,Linux环境下填加多个IP段在同一网卡

1. 原IP配置文件

[root@UE-LOCAL-126 network-scripts]# cat ifcfg-eth0

DEVICE=eth0

ONBOOT=yes

BOOTPROTO=static

IPADDR=10.0.0.126

NETMASK=255.255.255.0

GATEWAY=10.0.0.1

2. 新加IP段1

[root@UE-LOCAL-126 network-scripts]# cat ifcfg-eth0-range0

DEVICE=eth0

ONBOOT=yes

BOOTPROTO=static

IPADDR_START=10.0.1.111

IPADDR_END=10.0.1.115

CLONENUM_START=0

GATEWAY=10.0.1.1

NETMASK=255.255.255.000

NO_ALIASROUTING=yes

3. 新加IP段2

[root@UE-LOCAL-126 network-scripts]# cat ifcfg-eth0-range1

DEVICE=eth0

ONBOOT=yes

BOOTPROTO=static

IPADDR_START=10.0.0.116

IPADDR_END=10.0.0.119

CLONENUM_START=5(注意:对应eth0:5)

GATEWAY=10.0.0.1

NETMASK=255.255.255.000

NO_ALIASROUTING=yes

在远程操作时,要用network restart命令。

万不可用如ifdown ifcfg-eth0-range1, 这样会down掉设备eth0,造成断网。0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux 下,可以使用 `ifconfig` 命令或 `ip` 命令来给一个网卡设置多个 IP 地址。以下是使用 `ip` 命令的示例: ```bash sudo ip addr add 192.168.1.100/24 dev eth0 sudo ip addr add 192.168.1.101/24 dev eth0 sudo ip addr add 192.168.1.102/24 dev eth0 ``` 这个示例中,我们通过 `ip addr add` 命令向 `eth0` 网卡了三个 IP 地址,分别是 192.168.1.100、192.168.1.101 和 192.168.1.102。 在 Qt 中,可以使用 `QNetworkConfigurationManager` 类来获取指定网络配置下的所有 IP 地址。以下是一个示例代码: ```cpp QNetworkConfigurationManager manager; QString ethname = "eth0"; // 需要查找的网络配置的名称 QNetworkConfiguration config; // 获取所有网络配置 QList<QNetworkConfiguration> configurations = manager.allConfigurations(); // 遍历所有网络配置,查找名称匹配的配置 foreach (QNetworkConfiguration cfg, configurations) { if (cfg.name() == ethname) { config = cfg; break; } } // 如果找到了指定名称的配置,则可以获取它的IP地址列表 if (!config.isValid()) { qWarning() << "Could not find network configuration with name" << ethname; return; } QList<QHostAddress> addresses = config.allAddresses(); foreach (QHostAddress address, addresses) { qDebug() << "IP address:" << address.toString(); } ``` 在这个示例中,我们使用 `allAddresses()` 方法获取了指定网络配置下的所有IP地址列表,并使用 `foreach` 循环遍历输出了每个IP地址。 需要注意的是,为了使新的 IP 地址生效,可能需要重启网络服务或重启系统。并且,如果你想要使用 Qt 的网络管理类来建立网络连接,你需要使用 `QNetworkConfiguration::setLocalAddress()` 方法来设置本地 IP 地址。例如: ```cpp QNetworkSession* session = new QNetworkSession(config, this); session->setLocalAddress(QHostAddress("192.168.1.100")); session->open(); ``` 在这个示例中,我们使用 `setLocalAddress()` 方法将本地 IP 地址设置为 192.168.1.100,然后调用 `open()` 方法来建立网络连接。需要注意的是,如果你要使用多个 IP 地址,需要分别创建多个 `QNetworkSession` 对象,并为它们分别设置本地 IP 地址。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值