SylixOS网卡多 IP 配置

概述

网卡多 IP 是指在同一个网络接口上配置和绑定多个 IP 地址。
引进网卡多 IP 的目的主要有以下几个:

  • 提供服务高可用性。通过在同一接口绑定多个 IP 地址,然后在服务端使用这些 IP 地址启动多个服务实例。这样在任意一 IP 出现问题时,可以通过其他 IP 继续访问服务,提高服务的高可用性。
  • 特殊用途 IP。我们可以在一个接口上配置公网 IP、内网 IP 和特殊用途 IP,用于不同用途。多 IP 可以满足一块接口绑定不同类型 IP 的需求。

所以,引进网卡多 IP,主要是为了更灵活和更加充分的利用网络接口提供的网络能力。

实现方式

在 SylixOS 系统中,使用 ifmip 命令来给网卡添加多个 IP 地址。在Shell 界面通过 help ifmip 可以查看到该命令的实际使用方式。

[root@sylixos:/root]# help ifmip
net interface add / delete secondary IPv4 address.
NOTICE: a fake interface 'mi*' will be create / delete.
ifmip [ifname] [{add | del}] [ipv4 address [netmask]]

网卡添加第二个 IP

  • 在 en1 网卡上添加一个新的 IP 地址 172.168.0.126,子网掩码是 255.255.255.0 。
[root@sylixos:/root]# ifmip en1 add 172.168.0.126 255.255.255.0
  • 使用 ifconfig 命令查看新添加的 IP, mi3 网卡的地址表示 en1 网卡新添加的 IP。
[root@sylixos:/root]# ifconfig
mi3       Link encap: Ethernet HWaddr: 00:11:22:33:44:98Mif: en1 Ifidx: 4 DHCP: D4 D6 Spd: 1000 Mbpsinet addr: 172.168.0.126 netmask: 255.255.255.0gateway: 0.0.0.0 broadcast: 172.168.0.255UP BROADCAST RUNNING  MTU:1500  Metric:1en2       Link encap: Ethernet HWaddr: be:7a:3c:c9:9a:e5Dev: dw_1 Ifidx: 3 DHCP: D4 D6 Spd: N/Ainet addr: 10.4.130.210 netmask: 255.255.255.0gateway: 10.4.0.1 broadcast: 10.4.130.255inet6 addr: fe80::bc7a:3cff:fec9:9ae5 Scope:Link<T0>UP BROADCAST MULTICAST  MTU:1500  Metric:1collisions:0 txqueue:0 tcpaf:2 tcpwnd:65535RX ucast packets:0 nucast packets:0 dropped:0TX ucast packets:0 nucast packets:0 dropped:0RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)en1       Link encap: Ethernet HWaddr: 00:11:22:33:44:98Dev: dw_0 Ifidx: 2 DHCP: D4 D6 Spd: 1000 Mbpsinet addr: 10.4.120.211 netmask: 255.255.0.0gateway: 10.4.0.1 broadcast: 10.4.255.255UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1collisions:0 txqueue:512 tcpaf:2 tcpwnd:65535RX ucast packets:4 nucast packets:47860 dropped:0TX ucast packets:0 nucast packets:6 dropped:0RX bytes:2904343 (2.7 MB)  TX bytes:396 (396.0 B)lo0       Link encap: Local LoopbackDev: N/A Ifidx: 1 DHCP: D4 D6 Spd: N/Ainet addr: 127.0.0.1 netmask: 255.0.0.0P-to-P: 127.0.0.1 broadcast: N/Ainet6 addr: ::1 Scope:LoopbackUP LOOPBACK RUNNING  MTU:0  Metric:1collisions:0 txqueue:0 tcpaf:2 tcpwnd:262140RX ucast packets:3 nucast packets:0 dropped:0TX ucast packets:3 nucast packets:0 dropped:0RX bytes:168 (168.0 B)  TX bytes:168 (168.0 B)dns0: 0.0.0.0
dns1: 0.0.0.0
dns2: 0.0.0.0
dns3: 0.0.0.0
default device is: en1
list net interface: 4

网卡删除第二个 IP

  • 在 en1 网卡上删除上文添加的 IP 地址 172.168.0.126。
[root@sylixos:/root]# ifmip en1 del 172.168.0.126
  • 使用 ifconfig 命令查看上文新添加的 IP 已经被成功删除。
en2       Link encap: Ethernet HWaddr: be:7a:3c:c9:9a:e5Dev: dw_1 Ifidx: 3 DHCP: D4 D6 Spd: N/Ainet addr: 10.4.130.210 netmask: 255.255.255.0gateway: 10.4.0.1 broadcast: 10.4.130.255inet6 addr: fe80::bc7a:3cff:fec9:9ae5 Scope:Link<T0>UP BROADCAST MULTICAST  MTU:1500  Metric:1collisions:0 txqueue:0 tcpaf:2 tcpwnd:65535RX ucast packets:0 nucast packets:0 dropped:0TX ucast packets:0 nucast packets:0 dropped:0RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)en1       Link encap: Ethernet HWaddr: 00:11:22:33:44:98Dev: dw_0 Ifidx: 2 DHCP: D4 D6 Spd: 1000 Mbpsinet addr: 10.4.120.211 netmask: 255.255.0.0gateway: 10.4.0.1 broadcast: 10.4.255.255UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1collisions:0 txqueue:512 tcpaf:2 tcpwnd:65535RX ucast packets:47 nucast packets:432195 dropped:0TX ucast packets:6 nucast packets:6 dropped:0RX bytes:26538743 (25.3 MB)  TX bytes:720 (720.0 B)lo0       Link encap: Local LoopbackDev: N/A Ifidx: 1 DHCP: D4 D6 Spd: N/Ainet addr: 127.0.0.1 netmask: 255.0.0.0P-to-P: 127.0.0.1 broadcast: N/Ainet6 addr: ::1 Scope:LoopbackUP LOOPBACK RUNNING  MTU:0  Metric:1collisions:0 txqueue:0 tcpaf:2 tcpwnd:262140RX ucast packets:3 nucast packets:0 dropped:0TX ucast packets:3 nucast packets:0 dropped:0RX bytes:168 (168.0 B)  TX bytes:168 (168.0 B)dns0: 0.0.0.0
dns1: 0.0.0.0
dns2: 0.0.0.0
dns3: 0.0.0.0
default device is: en1
list net interface: 3

持久设置辅助 ip

使用 ifmip 命令只能临时修改辅助 ip,想要持久修改可以通过 ifparam.ini 文件来实现。
在 ifparam.ini 文件中增加 mipaddr、mgateway、mnetmask 字段配置即可增加一组扩展 ip 地址,一个网卡可以扩展多个 IP 地址。

[root@sylixos:/root]# cat /etc/ifparam.ini
[e1000_0]
enable=1
ipaddr=192.168.196.88
gateway=192.168.196.1
netmask=255.255.255.0
#dhcp=1
#dhcp6
mipaddr=192.168.1.88
mgateway=192.168.1.1
mnetmask=255.255.255.0
default=1
[root@sylixos:/root]# ifconfig
mi2       Link encap: Ethernet HWaddr: ce:63:a8:1e:22:5cMif: en1 Ifidx: 3 DHCP: D4 D6 Spd: 1000 Mbpsinet addr: 192.168.1.88 netmask: 255.255.255.0gateway: 192.168.1.1 broadcast: 192.168.1.255UP BROADCAST RUNNING  MTU:1500  Metric:1en1       Link encap: Ethernet HWaddr: ce:63:a8:1e:22:5cDev: e1000_0 Ifidx: 2 DHCP: D4 D6 Spd: 1000 Mbpsinet addr: 192.168.196.88 netmask: 255.255.255.0gateway: 192.168.196.1 broadcast: 192.168.196.255inet6 addr: fe80::cc63:a8ff:fe1e:225c Scope:LinkUP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1collisions:0 txqueue:0 tcpaf:2 tcpwnd:65535RX ucast packets:3 nucast packets:842 dropped:0TX ucast packets:1 nucast packets:7 dropped:0RX bytes:65476 (63.9 KB)  TX bytes:620 (620.0 B)lo0       Link encap: Local LoopbackDev: N/A Ifidx: 1 DHCP: D4 D6 Spd: N/Ainet addr: 127.0.0.1 netmask: 255.0.0.0P-to-P: 127.0.0.1 broadcast: N/Ainet6 addr: ::1 Scope:LoopbackUP LOOPBACK RUNNING  MTU:0  Metric:1collisions:0 txqueue:0 tcpaf:2 tcpwnd:262140RX ucast packets:3 nucast packets:0 dropped:0TX ucast packets:3 nucast packets:0 dropped:0RX bytes:168 (168.0 B)  TX bytes:168 (168.0 B)dns0: 114.114.114.114
dns1: 0.0.0.0
dns2: 0.0.0.0
dns3: 0.0.0.0
default device is: en1
list net interface: 3
[root@sylixos:/root]#
[root@sylixos:/root]# ping 192.168.1.199
Pinging 192.168.1.199Reply from 192.168.1.199: bytes=32 time=0.955ms TTL=64
Reply from 192.168.1.199: bytes=32 time=0.550ms TTL=64
Reply from 192.168.1.199: bytes=32 time=0.690ms TTL=64
Reply from 192.168.1.199: bytes=32 time=0.567ms TTL=64Ping statistics for 192.168.1.199:Packets: Send = 4, Received = 4, Lost = 0(0% loss),
Approximate round trip times in milli-seconds:Minimum = 0.550ms, Maximum = 0.955ms, Average = 0.690ms[root@sylixos:/root]# ping 192.168.196.199
Pinging 192.168.196.199Reply from 192.168.196.199: bytes=32 time=0.259ms TTL=64
Reply from 192.168.196.199: bytes=32 time=0.608ms TTL=64
Reply from 192.168.196.199: bytes=32 time=0.949ms TTL=64
Reply from 192.168.196.199: bytes=32 time=0.660ms TTL=64Ping statistics for 192.168.196.199:Packets: Send = 4, Received = 4, Lost = 0(0% loss),
Approximate round trip times in milli-seconds:Minimum = 0.259ms, Maximum = 0.949ms, Average = 0.619ms[root@sylixos:/root]#

实际场景

当一个设备只有一个网络接口,要与多台不同网段的主机通信,为了避免频繁地修改设备地址,可以将 SylixOS 设备的网卡改成多 IP 模式,这样只需要每次插拔网线,而不再用频繁往复地修改设备 IP 地址。如果三台设备都通过交换机来连接,则 SylixOS 设备可以同时和两个不同网段的主机通信。

  • 进入 SylixOS 设备的Shell界面,通过 ifconfig 命令查看网络接口信息。
[root@sylixos:/root]# ifconfig
en1       Link encap: Ethernet HWaddr: 00:0a:35:00:01:aaDev: zynq0 Ifidx: 2 DHCP: D4 D6 Spd: 1000 Mbpsinet addr: 10.4.120.11 netmask: 255.255.0.0gateway: 10.4.0.1 broadcast: 10.4.255.255inet6 addr: fe80::20a:35ff:fe00:1aa Scope:LinkUP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1collisions:0 txqueue:0 tcpaf:2 tcpwnd:131070RX ucast packets:0 nucast packets:4690 dropped:0TX ucast packets:0 nucast packets:9 dropped:0RX bytes:283649 (277.0 KB)  TX bytes:622 (622.0 B)lo0       Link encap: Local LoopbackDev: N/A Ifidx: 1 DHCP: D4 D6 Spd: N/Ainet addr: 127.0.0.1 netmask: 255.0.0.0P-to-P: 127.0.0.1 broadcast: N/Ainet6 addr: ::1 Scope:LoopbackUP LOOPBACK RUNNING  MTU:0  Metric:1collisions:0 txqueue:0 tcpaf:2 tcpwnd:262140RX ucast packets:3 nucast packets:0 dropped:0TX ucast packets:3 nucast packets:0 dropped:0RX bytes:168 (168.0 B)  TX bytes:168 (168.0 B)dns0: 0.0.0.0
dns1: 0.0.0.0
dns2: 0.0.0.0
dns3: 0.0.0.0
default device is: en1
list net interface: 2
  • 在网卡 en1 上添加一个 IP 地址 192.168.11.5,子网掩码是 255.255.255.0。
[root@sylixos:/root]# ifmip en1 add 192.168.11.5 255.255.255.0
  • 通过 ifconfig 命令查看网络接口信息。
[root@sylixos:/root]# ifconfig
mi2       Link encap: Ethernet HWaddr: 00:0a:35:00:01:aaMif: en1 Ifidx: 3 DHCP: D4 D6 Spd: 1000 Mbpsinet addr: 192.168.11.5 netmask: 255.255.255.0gateway: 0.0.0.0 broadcast: 192.168.11.255UP BROADCAST RUNNING  MTU:1500  Metric:1en1       Link encap: Ethernet HWaddr: 00:0a:35:00:01:aaDev: zynq0 Ifidx: 2 DHCP: D4 D6 Spd: 1000 Mbpsinet addr: 10.4.120.11 netmask: 255.255.0.0gateway: 10.4.0.1 broadcast: 10.4.255.255inet6 addr: fe80::20a:35ff:fe00:1aa Scope:LinkUP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1collisions:0 txqueue:0 tcpaf:2 tcpwnd:131070RX ucast packets:0 nucast packets:6429 dropped:0TX ucast packets:0 nucast packets:10 dropped:0RX bytes:389041 (379.9 KB)  TX bytes:664 (664.0 B)lo0       Link encap: Local LoopbackDev: N/A Ifidx: 1 DHCP: D4 D6 Spd: N/Ainet addr: 127.0.0.1 netmask: 255.0.0.0P-to-P: 127.0.0.1 broadcast: N/Ainet6 addr: ::1 Scope:LoopbackUP LOOPBACK RUNNING  MTU:0  Metric:1collisions:0 txqueue:0 tcpaf:2 tcpwnd:262140RX ucast packets:3 nucast packets:0 dropped:0TX ucast packets:3 nucast packets:0 dropped:0RX bytes:168 (168.0 B)  TX bytes:168 (168.0 B)dns0: 0.0.0.0
dns1: 0.0.0.0
dns2: 0.0.0.0
dns3: 0.0.0.0
default device is: en1
list net interface: 3
[root@sylixos:/root]#
  • 通过网线将 SylixOS 设备和 主机 A 相连,在 SylixOS 设备的Shell界面向主机 A 发送 ping 包,通信正常,证明新加的 IP 地址功能正常。
[root@sylixos:/root]# ping 192.168.11.2
Pinging 192.168.11.2Reply from 192.168.11.2: bytes=32 time=0.213ms TTL=255
Reply from 192.168.11.2: bytes=32 time=0.203ms TTL=255
Reply from 192.168.11.2: bytes=32 time=0.202ms TTL=255
Reply from 192.168.11.2: bytes=32 time=0.204ms TTL=255Ping statistics for 192.168.11.2:Packets: Send = 4, Received = 4, Lost = 0(0% loss),
Approximate round trip times in milli-seconds:Minimum = 0.202ms, Maximum = 0.213ms, Average = 0.205ms[root@sylixos:/root]#
  • 通过网线将 SylixOS 设备和 主机 B 相连,在 SylixOS 设备的Shell界面向主机 B 发送 ping 包,通信正常,证明原有的 IP 地址功能正常。
[root@sylixos:/root]# ping 10.4.0.105
Pinging 10.4.0.105Reply from 10.4.0.105: bytes=32 time=0.689ms TTL=64
Reply from 10.4.0.105: bytes=32 time=0.677ms TTL=64
Reply from 10.4.0.105: bytes=32 time=0.686ms TTL=64
Reply from 10.4.0.105: bytes=32 time=0.644ms TTL=64Ping statistics for 10.4.0.105:Packets: Send = 4, Received = 4, Lost = 0(0% loss),
Approximate round trip times in milli-seconds:Minimum = 0.644ms, Maximum = 0.689ms, Average = 0.674ms[root@sylixos:/root]#

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/849888.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis学习(十二)Redis的三种删除策略

目录 一、背景二、Redis 的三种删除策略2.1 定时删除&#xff08;用CPU换内存空间&#xff09;2.2 定期删除2.3 惰性删除&#xff08;用内存换CPU性能&#xff09; 三、总结 一、背景 我们都知道 Redis 是一种内存数据&#xff0c;所有的数据均存储在内存中&#xff0c;可以通…

Android 代码打印meminfo

旨在替代adb shell dumpsys meminfo packageName&#xff0c;在log打印meminfo&#xff0c;以便分析内存情况 ActivityManager.MemoryInfo memoryInfo new ActivityManager.MemoryInfo(); activityManager.getMemoryInfo(memoryInfo); long totalMemory Runtime.getRuntime(…

大数据环境搭建@Hive编译

Hive3.1.3编译 1.编译原因1.1Guava依赖冲突1.2开启MetaStore后运行有StatsTask报错1.3Spark版本过低 2.环境部署2.1jdk安装2.2maven部署2.3安装图形化桌面2.4安装Git2.5安装IDEA 3.拉取Hive源码4.Hive源码编译4.1环境测试1.测试方法——编译2.问题及解决方案&#x1f4a5;问题1…

【设计模式】结构型-装饰器模式

在代码的海洋深处迷离&#xff0c;藏匿着一片神奇之地。那里有细腻的线条交错&#xff0c;是装饰器的奇妙艺术。 文章目录 一、登录的困境二、装饰器模式三、装饰器模式的核心组成部分四、运用装饰器模式五、装饰器模式的应用场景六、小结推荐阅读 一、登录的困境 假设我们有…

YOLOv5改进总目录 | backbone、Neck、head、损失函数,注意力机制上百种改进技巧

&#x1f4a1;&#x1f4a1;&#x1f4a1;本专栏所有程序均经过测试&#xff0c;可成功执行&#x1f4a1;&#x1f4a1;&#x1f4a1; 专栏地址&#xff1a; YOLOv5改进入门——持续更新各种有效涨点方法 点击即可跳转 报错 解决Yolov5的RuntimeError: result type Float can…

qq号码采集软件

寅甲QQ号码采集软件, 一款采集QQ号、QQ邮件地址&#xff0c;采集QQ群成员、QQ好友的软件。可以按关键词采集&#xff0c;如可以按地区、年龄、血型、生日、职业等采集。采集速度非常快且操作很简单。

C# WPF入门学习主线篇(九)—— ComboBox常见属性和事件

欢迎来到C# WPF入门学习系列的第九篇。在前面的文章中&#xff0c;我们已经学习了 Button、TextBox、Label 和 ListBox 控件。今天&#xff0c;我们将探讨 WPF 中的另一个重要控件——ComboBox。本文将详细介绍 ComboBox 的常见属性和事件&#xff0c;并通过示例代码展示其在实…

逻辑这回事(三)----时序分析与时序优化

基本时序参数 图1.1 D触发器结构 图1.2 D触发器时序 时钟clk采样数据D时&#xff0c;Tsu表示数据前边沿距离时钟上升沿的时间&#xff0c;MicTsu表示时钟clk能够稳定采样数据D的所要求时间&#xff0c;Th表示数据后边沿距离时钟上升沿的时间&#xff0c;MicTh表示时钟clk采样…

Spring Boot集成pmd插件快速入门Demo

1.什么是pmd插件&#xff1f; PMD 插件允许您在项目的源代码上自动运行PMD代码分析工具&#xff0c;并生成带有其结果的站点报告。它还支持与 PMD 一起分发的单独的复制/粘贴检测器工具&#xff08;或 CPD&#xff09;。 此版本的 Maven PMD 插件使用 PMD 6.42.0 并且需要 Jav…

从大到小吗?-分支c++

题目描述 给出 4 个整数&#xff0c;a , b , c , d 。 判断这四个数字是否满足从大到小。 输入 输入 4 个整数&#xff0c;a , b , c , d 。 输出 输出 Yes 或者 No 。 样例输入 4 3 2 1 样例输出 Yes 提示 分析&#xff1a; 这道题十分的简单&#xff0c;只需判断…

23 二叉搜索树

本节目标 1.内容安排说明 2.二叉搜索树实现 3.应用分析 4.进阶题 1. 内容安排说明 二叉树在c数据结构已经说过了&#xff0c;本节内容是因为&#xff1a; map和set特性需要先铺垫二叉搜索树&#xff0c;而二叉搜索树也是一种树形结构二叉搜索树的特性了解&#xff0c;有助于…

Linux:动态库和静态库的编译与使用

目录 1.前言 2.静态链接库 3.静态链接库生成步骤 4.静态链接库的使用 5.动态链接库 6.动态链接库生成步骤 7.动态链接库的使用 8.动态链接库无法加载 9.解决动态链接库无法加载问题 前言 在《MinGW&#xff1a;从入门到链接库》博客中简单介绍了如何编译动态链接库和静态链接库…

YOLOv5车流量监测系统研究

一. YOLOv5算法详解 YOLOv5网络架构 上图展示了YOLOv5目标检测算法的整体框图。对于一个目标检测算法而言&#xff0c;我们通常可以将其划分为4个通用的模块&#xff0c;具体包括&#xff1a;输入端、基准网络、Neck网络与Head输出端&#xff0c;对应于上图中的4个红色模块。Y…

Attendance Machine (KPI)

Attendance Machine &#xff08;KPI&#xff09; QQ机考勤机数据KPI

SecureCRT[po破] for Mac SSH终端操作工具[解] 安装教程

文章目录 效果一、准备工作二、开始安装1、双击运行软件&#xff0c;将其从左侧拖入右侧文件夹中&#xff0c;等待安装完毕2、 应用程序显示软件图标&#xff0c;表示安装成功 三、输入对应参数1、解决“软件已损坏&#xff0c;无法打开&#xff0c;要移到废纸篓”问题解决步骤…

【Python】pip 使用方法详解

目录 0 简介 1 pip 基本使用 1.1 安装 pip 1.2 卸载 pip 1.3 更新 pip 1.4 查看帮助 2 安装包 2.1 安装单个包 2.2 批量安装多个包 3 卸载包 4 使用镜像源 4.1 国内常用镜像源 4.1 单次安装设置镜像源 4.2 设置默认镜像源 0 简介 pip 是 python 官方的包管理工具…

一起学大模型 - 一起动笔练习prompt的用法

文章目录 前言一、代码演示二、代码解析1. 导入所需的库和模块&#xff1a;2. 设置日志记录和初始化模型&#xff1a;3. 定义一个函数用于清理GPU内存&#xff1a;4. 定义一个继承自LLM基类的QianWenChatLLM类&#xff0c;并实现对话生成的逻辑&#xff1a;5. 示例代码的主体部…

C++ | Leetcode C++题解之第137题只出现一次的数字II

题目&#xff1a; 题解&#xff1a; class Solution { public:int singleNumber(vector<int>& nums) {int a 0, b 0;for (int num: nums) {b ~a & (b ^ num);a ~b & (a ^ num);}return b;} };

安卓约束性布局学习

据说这个布局是为了解决各种布局过度前套导致代码复杂的问题的。 我想按照自己想实现的各种效果来逐步学习&#xff0c;那么直接拿微信主页来练手&#xff0c;用约束性布局实现微信首页吧。 先上图 先实现顶部搜索框加号按钮 先实现 在布局中添加一个组件&#xff0c;然后摆放…

2024 年最全的 21 款数据恢复工具软件汇总

使用其中任何一款免费数据恢复工具&#xff0c;您都可以找回那些您认为已经永远消失的文件。我根据这些程序对我而言的易用性和它们提供的功能对这些程序进行了排名。 这些应用程序从您的硬盘、USB 驱动器、媒体卡等恢复文档、视频、图像、音乐等。我建议每个计算机所有者都安装…