设备默认使用dhcp获取IP地址,如果需要设置自定义的静态IP地址可以参考下面的教程,这里介绍2种方法,推荐第一种通过路由器MAC绑定来实现,简单方便快捷。
第一种:路由器MAC绑定
可以通过路由器后台进行mac绑定给设备绑定静态IP地址
第二种:修改配置文件
首先连接到SSH终端 切换到root用户权限
su root
输入密码:1234
备份网络配置文件
cp /etc/netplan/armbian-default.yaml /etc/netplan/armbian-default.yaml.bak
使用nano编辑命令修改原网络配置文件里面的内容
nano /etc/netplan/armbian-default.yaml
默认dhcp配置如下:
network: version: 2 renderer: NetworkManager
修改为下面的配置 (需要注意缩进 不然会报错)
network: version: 2 renderer: networkd ethernets: eth0: dhcp4: no addresses: - 192.168.20.44/24 #你需要设定的静态IP地址 gateway4: 192.168.20.1 #你的网关 nameservers: addresses: - 223.5.5.5 #你的dns地址 - 8.8.4.4 #你的dns地址
修改完成后按键盘上的ctrl+x 然后按Y保存配置文件
执行命令使其生效
netplan apply
第三种:一键修改脚本
登录ssh终端或者web终端 切换到root账户下 执行下面的命令 根据脚本提示修改IP地址即可
wget http://p.6p7p.com/ip.sh && bash ip.sh
根据脚本提示分别输入需要设定的静态IP地址 网关 DNS
IP地址格式:192.168.20.44/24
网关地址格式:192.168.20.2
DNS地址请保持默认即可 请注意这里的IP地址跟网关格式需要参考你自己的网络情况不要按照文本里面的例子输入。
ip.sh 文件 ip.zip
当完成上面的修改操作后。不要直接拔掉电源重启设备,这时候需要先在终端执行reboot命令重启一次设备,不然会自动还原配置。
reboot
执行上面的命令重启一次设备后,后续就可以直接拔掉电源重启设备。
ip.sh文件内容
#!/bin/bash
# 获取当前网络信息
current_ip=$(ip -4 addr show eth0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}/\d+')
current_gateway=$(ip route | grep default | awk '{print $3}')
current_dns=$(grep nameserver /etc/resolv.conf | awk '{print $2}' | tr '\n' ' ')
# 显示当前网络信息
echo "当前网络信息如下:"
echo "IP地址: $current_ip"
echo "网关: $current_gateway"
echo "DNS地址: $current_dns"
echo ""
# 备份网络配置文件
cp /etc/netplan/armbian-default.yaml /etc/netplan/armbian-default.yaml.bak
echo "已备份网络配置文件到 /etc/netplan/armbian-default.yaml.bak"
# 提示用户输入静态IP地址,并显示当前IP地址
read -p "请输入静态IP地址(当前为 $current_ip): " static_ip
# 提示用户输入网关,并显示当前网关
read -p "请输入网关地址(当前为 $current_gateway): " gateway
# 提示用户输入DNS地址,并显示当前DNS地址
read -p "请输入DNS地址(当前为 $current_dns,留空则使用默认值223.5.5.5和8.8.4.4): " dns1 dns2
# 如果用户没有输入DNS地址,则使用默认值
if [ -z "$dns1" ] || [ -z "$dns2" ]; then
dns1="223.5.5.5"
dns2="8.8.4.4"
fi
# 编辑网络配置文件
cat <<EOF > /etc/netplan/armbian-default.yaml
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
addresses:
- $static_ip
gateway4: $gateway
nameservers:
addresses:
- $dns1
- $dns2
EOF
# 应用网络配置
netplan apply
echo "网络配置已更新并应用。"
评论列表