我的 Debian 11 系统中有 2 个与不同互联网提供商的连接,我需要将 eth0 设置为默认连接,如果因任何原因断网,则更改为 eth1。之后,如果 eth0 恢复互联网连接,我将需要再次将该连接作为主连接。这可能吗?
答案1
是的,可以使用 Debian 的网络管理工具来完成
sudo apt-get update
sudo apt-get install ifmetric iproute2
创建 systemd 服务/etc/systemd/system/switch-internet.service
[Unit]
Description=Switch Internet Connection
[Service]
Type=simple
ExecStart=/path/to/your/script.sh
Restart=always
[Install]
WantedBy=multi-user.target
创建脚本并保存到您喜欢的位置
/path/to/your/script.sh
#!/bin/bash
while true; do
# Check eth0 connectivity
if ping -I eth0 -c 1 google.com &> /dev/null; then
ifmetric eth0 0 # Set lower metric to prioritize eth0
ifmetric eth1 1
else
ifmetric eth0 1 # Set higher metric to deprioritize eth0
ifmetric eth1 0
fi
sleep 10 # Adjust the sleep interval as needed
done
启用并启动服务
sudo systemctl enable switch-internet.service
sudo systemctl start switch-internet.service