在使用 Armbian 系统时,默认情况下网络接口通常通过 DHCP 获取动态 IP 地址。然而,在某些场景下(如服务器部署、固定设备连接等),我们需要将 IP 地址设置为静态以确保网络配置的稳定性。本文将详细介绍如何在最新版的 Armbian 中完成这一操作。


一、背景知识

netplan 的引入:

  • 在较新的 Linux 发行版中(包括 Armbian),传统的 /etc/network/interfaces 文件已被弃用,取而代之的是 netplan 工具。
  • netplan 使用 YAML 格式的配置文件来管理网络接口。

静态 IP 的优势:

  • 静态 IP 地址不会随时间变化,便于远程访问和管理。
  • 对于需要长期运行的服务(如 NAS、Web 服务器等),静态 IP 是必需的。

二、准备工作

在开始配置之前,请确保以下条件已满足:

  1. Armbian 系统已正确安装并运行。
  2. 你有管理员权限(可以通过 sudo 执行命令)。
  3. 确认当前网络环境(网关、子网掩码、DNS 等信息)。

三、配置步骤

1. 找到 netplan 配置文件

默认情况下,netplan 的配置文件位于 /etc/netplan/ 目录下,文件名通常为类似以下之一:

  • 01-netcfg.yaml
  • 50-cloud-init.yaml
  • 00-default-use-network-manager.yaml

通过以下命令查看该目录下的文件:

ls /etc/netplan/

备份原始文件:

sudo cp /etc/netplan/<文件名>.yaml /etc/netplan/<文件名>.yaml.bak

2. 编辑 netplan 配置文件

使用文本编辑器打开配置文件:

sudo nano /etc/netplan/00-default-use-network-manager.yaml

示例配置:

network:
  version: 2
  ethernets:
    eth0:
      dhcp4: no  # 禁用 DHCP
      addresses: [192.168.1.100/24]  # 静态 IP 和子网掩码
      routes:
        - to: default
          via: 192.168.1.1  # 默认网关
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4]  # DNS 服务器

关键参数说明:

  • dhcp4: no:禁用 DHCP。
  • addresses: [192.168.1.100/24]:静态 IP 和子网掩码。
  • routes:定义默认路由,to: default 表示所有流量,via: 192.168.1.1 指定网关。
  • nameservers:设置 DNS 服务器。
注意:YAML 文件对缩进非常敏感,请使用 2 个空格缩进。

3. 应用新的网络配置

sudo netplan apply

4. 验证配置

检查网络接口:

ip addr show eth0

检查默认路由:

ip route

输出应包含:

default via 192.168.1.1 dev eth0

四、常见问题及解决方法

1. gateway4 被弃用

若出现警告:

WARNING: gateway4 has been deprecated, use default routes instead.

解决方法:改用 routes 配置:

routes:
  - to: default
    via: 192.168.1.1

2. systemd-networkd 未运行

检查服务状态:

sudo systemctl status systemd-networkd

启动并启用服务:

sudo systemctl start systemd-networkd
sudo systemctl enable systemd-networkd

3. 网卡名称不匹配

检查网卡名称:

ip link

4. 配置文件语法错误

使用在线工具(如 YAML Lint)检查语法。


五、总结

通过以上步骤,你可以成功将 Armbian 的网络配置从动态 IP 修改为静态 IP。静态 IP 配置对于需要稳定网络环境的场景非常重要!


附录:参考链接

型号:雷鸟 55F270C-J

软件准备

以我的Macbook为例使用homebrew 安装 adb 工具,安装Homebrew的方法在这里就不做赘述了,请自行搜索相关教程。

  1. 安装 android-platform-tools

    brew install android-platform-tools --cask
    homebrew 从 2.5.11 后,cask 就取消了,如有报错,请去除 --cask,开始新的结构以及对 macOS 10.13 high Sierra 不再支持,也有不少软件没有二进制,只能从源码编译。
  2. 检测是否正常安装

    adb --version

电视端准备

  1. 查看电视 IP (可通过路由器等方式查看),本文以 192.168.31.198 为例。
  2. 电视打开 ADB 调试
    进入 设置 > 系统 > 本机信息 界面,连续按 上 > 下 > 左 > 右 键就会出现 adb 开关选项,将 adb 打开。

连接电视

电脑连接电视 ADB 调试

adb connect 192.168.31.198   \\你改为自己电视的实际IP

首次连接可能出现以下返回信息:

* daemon not running; starting now at tcp:5037
* daemon started successfully
failed to authenticate to 192.168.31.198:5555

shell 设置

打开 shell:

adb shell

成功进入 shell 状态为:前缀提示 ak30a5:/ $ 类似字样。

打开安装权限, 分别输入以下命令

setprop persist.tcl.debug.installapk 1
setprop persist.tcl.installapk.enable 1
exit

将要安装的应用下载到电脑中(以 dbzm_4.1.7_dangbei.apk 为例),使用如下命令进行安装:

adb install /Users/zyp/Downloads/dbzm_3.3.6_dangbei.apk

卸载应用

打开 shell

adb shell

列出已安装应用

pm list packages

卸载应用

卸载命令如下:

pm uninstall --user 0 包名

常见需卸载软件

# TCL 智慧家居
pm uninstall --user 0 com.tcl.convergehome

# T 惠购
pm uninstall --user 0 com.tcl.tshop

# T2 游戏中心
pm uninstall --user 0 com.tcl.gamecenter

# 艺生活
pm uninstall --user 0 com.tcl.appreciate.art

# 全民 K 歌
pm uninstall --user 0 com.tcl.ffkaraoke

# 轮播
pm uninstall --user 0 com.tcl.tliveplay

# 雷鸟教育
pm uninstall --user 0 com.tcl.ffeducation

FAQ

安装软件报错

错误提示:

-Failure [INSTALL_FAILED_VERIFICATION_FAILURE: Package Verification Result]

问题原因:

主要是因为验证安装包失败,将 verifier_verify_adb_installsglobal package_verifier_enable 设置为 0,禁用掉即可。

解决方式:

adb shell settings put global verifier_verify_adb_installs 0

adb shell settings put global package_verifier_enable 0

然后再次尝试安装。

项目地址:【点击进入

1. 一台可以连接公网的 VPS,防火墙和安全策略需要放行 8008 和 5555 端口,否则会无法访问和无法接收数据。单核 512MB 内存的服务器配置就足以满足大多数使用场景

2. 一个已经设置好 A 记录,指向 Dashboard 服务器 ip 的域名

提示

  • 如果你想使用 CDN,请准备两个域名,一个配置好 CDN 用作公开访问,CDN 需要支持WebSocket 协议;另一个域名不要使用 CDN,用作 Agent 端与 Dashboard 的通信
  • 本文档分别以 "cdn.example.com" 和 "data.example.com" 两个域名来演示

3. 一个 Github 账号(或:Gitlab、Jihulab、Gitee)

提示

  • 如果您位于中国大陆,访问 Github 有困难,我们建议您选择 Jihulab 作为 OAuth 提供商
  • 本文档将以宝塔面板反代面板的过程作为范例,随着未来版本的变化,部分功能的入口可能会发生改变,本文档仅供参考

警告

  • 本项目并不依赖宝塔,你可以选择使用你喜欢的任何服务器面板,如果你能力足够,可以手动安装 NginX 或 Caddy 来配置 SSL 和反代。
  • 如果你认为没有必要使用 80、443 端口来访问 Dashboard,你甚至不需要安装 NginX 就可以直接使用安装脚本。

4. 安装宝塔面板

Centos安装脚本

yum install -y wget && wget -O install.sh https://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec

Ubuntu/Deepin安装脚本

wget -O install.sh https://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh ed8484bec
  • 在宝塔面板上安装Nginx插件

5. 获取 Github的 Client ID 和密钥

  • 首先我们需要新建一个验证应用,以 Github 为例,登录 Github 后,打开 https://github.com/settings/developers ,依次选择“OAuth Apps” - “New OAuth App”
    Application name - 随意填写
    Homepage URL - 填写面板的访问域名,如:"http://cdn.example.com"
    Authorization callback URL - 填写回调地址,如:"http://cdn.example.com/oauth2/callback"
  • 点击 “Register application”
  • 保存页面中的 Client ID,然后点击 “Generate a new client secret“,创建一个新的 Client Secret,新建的密钥- 仅会显示一次,请妥善保存
  • JihuLab 的应用创建入口为:https://jihulab.com/-/profile/applications
  • Redirect URL 中应填入回调地址
  • 在下方范围中勾选 read_user 和 read_api
  • 创建完成后,保存好应用程序 ID 和密码

6. 安装Dashboard(注意:这一步等宝塔面板的Nginx安装完成后再执行

curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh  -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh 
  • 这一步如果执行不了,先执行下面命令,安装依赖包,然后再执行上面的命令
apt install curl -y
  • 分别填入Client ID、客户端密钥、github账号(这里要注意不是登录账号,是昵称)、自定义一个站点标题,其他的保存默认即可
  • 面板管理命令
./nezha.sh

7. 配置反向代理

  • 点击添加站点——输入前面解析好的域名——点击提交——点击会议(中间那个)——点击SSL——勾选对应的域名——点击申请——成功后,打开强制HTTPS
  • 点击反向代理——自定义一个代理名称——在目标网址中输入:http://127.0.0.1——点击提交——点击会议——把里面的内容全部删掉——复制下面的代码粘贴上去——点击保存即可
#PROXY-START/
location / {
    proxy_pass http://127.0.0.1:8008;
    proxy_set_header Host $http_host;
    proxy_set_header      Upgrade $http_upgrade;
}
location ~ ^/(ws|terminal/.+)$  {
    proxy_pass http://127.0.0.1:8008;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "Upgrade";
    proxy_set_header Host $http_host;
}
#PROXY-END/

8. 新建一个服务器:点击主机——点击添加服务器——名称:自定义——点击添加即可——然后它会生成一个Agent密钥

9. 在 Linux 中安装 Agent (Ubuntu、Debian、CentOS)

首先在管理面板中添加一台服务器
在被控服务器中,运行脚本(位于中国大陆的服务器请使用镜像):

curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh  -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh

如果你的被控服务器位于中国大陆,可以使用镜像:

curl -L https://cdn.jsdelivr.net/gh/naiba/nezha@master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo CN=true ./nezha.sh
  • 选择8“安装监控 Agent”
  • 输入通信域名,如:”data.example.com“
  • 输入面板通信端口(RPC端口),默认为 5555
  • 输入 Agent 密钥,Agent 密钥在管理面板中添加服务器时生成,可以在管理面板中的“主机”页中找到
  • 等待安装完成后返回 Dashboard 主页查看服务器是否上线

2023-04-25T05:29:51.png
InfiniCloud是一款非常不错的日本网盘,不仅速度快,而且还支持WebDAV 同步!

官网:https://infini-cloud.net

即使你在大陆也无需翻墙即可访问网盘。

免费用户默认20G 永久空间,输入注册码:S3DQY】还能得到额外5G的永久免费空间,

最近有个初期容量変更特典,新老用户可以再领2 次10GB 的永久空间。加到一起足足是45GB 的免费网盘!

获取额外的2 个10GB 永久网盘容量方法:

官方有个活动是老用户通过官方的邮件邀请可获得10G 永久空间的升级,可以将(jp,en)语言的两个链接各领取一次。经过网友实测,新用户也能用,而且新用户初始容量是20G + 5G ,加上这两个10GB 后可以达到45G 的永久免费网盘空间,此Bug 要趁早使用,估计很快就会被修复。

  • 英文邀请网址: 

https://infini-cloud.net/en/modules/bonus/code=202304_10GB_jp/userid=你的用戶名 

  • 日语邀请网址:

https://infini-cloud.net/en/modules/bonus/code=202304_10GB_en/userid=你的用戶名 

这样即可实现45GB 永久免费容量!按照以上步骤操作,可获得20GB+5GB+20GB=45GB免费容量,有兴趣可以在首页参加免费一年的15G容量赠送获得,将InfiniCLOUD 帐户关联到3个App即可领取。

2023-04-25T05:30:30.png

白鲁到45G免费网盘后,现在我们需要开启WebDav 来更好的使用它!

  • 进入个人中心,找到Apps Connection
  • 勾选Turn on Apps Connection 并在弹出窗口中勾选同意按钮即可

开通以后记住自己的密码,现在我们通过图形化的映射软体——RaiDrive 给它挂载到本地电脑上

RaiDrive:【官方下载

注意:如果无法连接,请稍后再试,我是注册后过了10分钟左右才连接成功! 

2023-04-25T05:30:48.png