Linux(22) Linux设置网络优先级顺序

简介: Linux(22) Linux设置网络优先级顺序

Ubuntu 20.04中,我们经常面临同时连接多个网络接口的情况。为了确保数据流量通过首选接口进行传输,我们可以设置网络接口的优先级。本文将介绍如何在Ubuntu 20.04中设置网络接口优先级,并验证当前使用的接口。

设置网络接口优先级

以下是在Ubuntu 20.04中设置网络接口优先级的步骤:

  1. 打开终端并以管理员身份登录到系统。
  2. 使用适当的文本编辑器(例如nano或vi)打开NetworkManager的配置文件。配置文件通常位于/etc/NetworkManager/conf.d/目录中。
  3. 在配置文件中,为每个网络接口设置优先级。可以使用interface-name选项指定接口名称,并使用autoconnect-priority选项设置优先级。较小的数值表示较高的优先级。
vi /etc/NetworkManager/conf.d/10-globally-managed-devices.conf
  1. 示例配置文件内容如下:
[device]
interface-name=usb0
autoconnect-priority=10
 
[device]
interface-name=eth0
autoconnect-priority=20
 
[device]
interface-name=eth1
autoconnect-priority=30

设置usb0(4G)优先级最高, 其次是eth0和eth1。

  1. 保存并关闭文件。
  2. 重新启动NetworkManager服务,以使更改生效。在终端中执行以下命令:
sudo systemctl restart NetworkManager

验证当前使用的网络接口

要验证当前使用的网络接口,可以执行以下步骤:

  1. 打开终端并以管理员身份登录到系统。
  2. 使用ip addr命令或ifconfig命令来查看网络接口的详细信息。例如:
ip addr 
或者 
ifconfig xxx
  1. 在命令输出结果中,查找带有有效IP地址和活动连接状态的接口。通常,该接口是当前用于网络连接的接口。

假设我们设置eth0优先(重复设置网络接口优先级的步骤), usb0和eth1是其次 , 我们在执行ping www.baidu.com的时候可以执行ifconfig eth0可以观察到只有eth0的RX packets TX packet数据包在变化 其他网络接口没有变化。

# ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.27  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::ccd0:72a6:d5b6:28c4  prefixlen 64  scopeid 0x20<link>
        ether fe:a5:5e:9b:f5:30  txqueuelen 1000  (Ethernet)
        RX packets 8113  bytes 927198 (927.1 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 148  bytes 15166 (15.1 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 38

同理 , 假设我们设置usb0优先(重复设置网络接口优先级的步骤), eth0和eth1是其次 , 我们在执行ping www.baidu.com的时候可以执行ifconfig usb0可以观察到只有usb0的RX packets TX packet数据包在变化 其他网络接口没有变化。

# ifconfig usb0
usb0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.5.245.146  netmask 255.0.0.0  broadcast 10.255.255.255
        inet6 fe80::ac0c:29ff:fea3:9b6d  prefixlen 64  scopeid 0x20<link>
        ether ae:0c:29:a3:9b:6d  txqueuelen 1000  (Ethernet)
        RX packets 162  bytes 17128 (17.1 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 202  bytes 26349 (26.3 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

请注意,根据网络配置和路由规则,系统可能会动态选择网络接口进行通信。因此,实际使用的接口可能会根据目标IP地址和路由表的规则而有所变化。

总结

通过设置网络接口的优先级,我们可以确保数据流量通过首选接口进行传输,提高网络连接的可靠性和灵活性。在Ubuntu 20.04中,我们可以通过编辑NetworkManager的配置文件来设置网络接口的优先级,并使用命令行工具验证当前使用的接口。

相关文章
|
2月前
|
安全 Linux 网络安全
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
88 0
Nipper 3.9.0 for Windows & Linux - 网络设备漏洞评估
|
3月前
|
运维 Linux 开发者
Linux系统中使用Python的ping3库进行网络连通性测试
以上步骤展示了如何利用 Python 的 `ping3` 库来检测网络连通性,并且提供了基本错误处理方法以确保程序能够优雅地处理各种意外情形。通过简洁明快、易读易懂、实操性强等特点使得该方法非常适合开发者或系统管理员快速集成至自动化工具链之内进行日常运维任务之需求满足。
192 18
|
2月前
|
机器学习/深度学习 算法 PyTorch
【Pytorch框架搭建神经网络】基于DQN算法、优先级采样的DQN算法、DQN + 人工势场的避障控制研究(Python代码实现)
【Pytorch框架搭建神经网络】基于DQN算法、优先级采样的DQN算法、DQN + 人工势场的避障控制研究(Python代码实现)
|
3月前
|
网络协议 关系型数据库 Linux
【App Service Linux】在Linux App Service中安装 tcpdump 并抓取网络包
在App Service for Linux环境中,无法像Windows一样直接使用网络排查工具抓包。本文介绍了如何通过TCPDUMP在Linux环境下抓取网络包,包括SSH进入容器、安装tcpdump、执行抓包命令及下载分析文件的完整操作步骤。
176 5
|
2月前
|
机器学习/深度学习 算法 PyTorch
【DQN实现避障控制】使用Pytorch框架搭建神经网络,基于DQN算法、优先级采样的DQN算法、DQN + 人工势场实现避障控制研究(Matlab、Python实现)
【DQN实现避障控制】使用Pytorch框架搭建神经网络,基于DQN算法、优先级采样的DQN算法、DQN + 人工势场实现避障控制研究(Matlab、Python实现)
114 0
|
4月前
|
Web App开发 网络协议 Linux
【Linux】网络基础
TCP/IP五层模型是网络通信的基础框架,将复杂的数据传输过程分为物理层、数据链路层、网络层、传输层和应用层,每层各司其职,协同完成远程通信。该模型确保了不同设备和网络之间的互联互通,是现代互联网运行的核心机制。
259 5
|
4月前
|
网络协议 Linux 开发者
深入Linux中UDP网络通信机制编程探索
以上步骤概述了Linux中UDP网络通信的编程机制。在实现时,因关注细节和上下文环境可能有所调整,但大致流程是一致的。这些知识片段旨在帮助开发者快速上手Linux下的UDP编程,并提供可靠的信息作为编程的基础。在编程实践中,应结合实际业务需求,设计合适的数据传输协议,确保数据的正确性和实时性。
105 0
|
6月前
|
安全 网络协议 Linux
Linux网络应用层协议展示:HTTP与HTTPS
此外,必须注意,从HTTP迁移到HTTPS是一项重要且必要的任务,因为这不仅关乎用户信息的安全,也有利于你的网站评级和粉丝的信心。在网络世界中,信息的安全就是一切,选择HTTPS,让您的网站更加安全,使您的用户满意,也使您感到满意。
181 18
|
6月前
|
Ubuntu Linux 网络安全
在Linux云服务器上限制特定IP进行SSH远程连接的设置
温馨提示,修改iptables规则时要格外小心,否则可能导致无法远程访问你的服务器。最好在掌握足够技术知识和理解清楚操作含义之后再进行。另外,在已经配置了防火墙的情况下,例如ufw(Ubuntu Firewall)或firewalld,需要按照相应的防火墙的规则来设置。
335 24
|
6月前
|
Linux 数据安全/隐私保护
使用Linux命令行接入无线网络Wi-Fi的示例。
现在,你已经使用命令行成功地连接到 Wi-Fi 网络了。这两个示例涵盖了用 `nmcli` 和 `wpa_supplicant` 连接无线网络的常见场景,让你能够不依赖图形化界面来完成这个任务。在日常使用中熟练掌握这些基本操作能增强你对 Linux 系统的理解,帮助你更有效地处理各种问题。
418 12

热门文章

最新文章