如何调整 linux 路由表的默认路由 ?

如图,我的路由表情况如下,现在默认的网络会从enp3s0走,如果想调整一下路由的顺序,

route del default

route del default

route add default gw 192.168.172.1 dev enp3s0

route add default gw 172.21.67.1 dev enp1s0

### Linux 中 IPv6 默认路由的配置与排查 #### 配置 IPv6 默认路由Linux 系统中,可以通过命令行工具 `ip` 或者编辑网络接口配置文件来设置 IPv6 的默认路由。 1. **通过命令行临时添加默认路由** 使用 `ip route add default via` 命令可以快速为指定网卡添加一条 IPv6 默认路由。例如: ```bash ip -6 route add default via 2001:db8:85a3::1 dev eth0 ``` 这里的 `2001:db8:85a3::1` 是路由器的 IPv6 地址,`eth0` 是目标网卡名称[^1]。 2. **持久化配置** 若要使该配置永久生效,则需修改对应的网络接口配置文件 `/etc/sysconfig/network-scripts/ifcfg-<interface>` (适用于 Red Hat 和 CentOS),或者 `/etc/network/interfaces`(适用于 Debian 及其衍生版本)。 对于 SUSE 和 RHEL/CentOS 系列系统,可以在配置文件中加入以下参数: ```plaintext IPV6INIT=yes IPV6_DEFAULTGW=2001:db8:85a3::1 ``` 如果使用的是 NetworkManager 工具管理网络连接,也可以通过 `nmcli` 来完成配置: ```bash nmcli con modify "Connection Name" ipv6.gateway 2001:db8:85a3::1 nmcli con up "Connection Name" ``` 替换 `"Connection Name"` 为你实际使用的网络连接名[^2]。 #### 检查当前的 IPv6 路由表 要查看系统的 IPv6 路由表状态,可执行以下命令: 1. **显示完整的 IPv6 路由表** ```bash ip -6 route show ``` 此命令会列出所有的 IPv6 路由条目,包括默认路由和其他特定子网的路由。 2. **仅显示默认路由** 若只关心默认路由部分,可以用过滤条件简化输出: ```bash ip -6 route | grep default ``` #### 排查常见问题 当发现无法正常通信时,可能的原因有以下几个方面: 1. **检查是否缺少默认路由** 如上述方法所示,确认是否存在有效的默认路由记录。 2. **验证网关可达性** 利用 `ping6` 测试到下一跳网关设备的连通情况: ```bash ping6 2001:db8:85a3::1 ``` 3. **核对本地 IP 地址分配** 查看本机是否有正确的 IPv6 地址绑定至对应网卡上: ```bash ip -6 addr show dev eth0 ``` 4. **防火墙规则干扰** 某些情况下可能是由于防火墙阻止了流量传输所致,应审查相关策略并调整允许必要的 ICMPv6 类型消息传递。 ```python import subprocess def check_ipv6_gateway(): result = subprocess.run(['ip', '-6', 'route'], stdout=subprocess.PIPE) output = result.stdout.decode('utf-8') if 'default' not in output: print("No default IPv6 gateway found.") else: print(f"Default IPv6 gateway is configured:\n{output}") check_ipv6_gateway() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值