{"id":21056107,"url":"https://github.com/217heidai/imagebuilder-immortalwrt","last_synced_at":"2025-05-15T23:32:57.352Z","repository":{"id":218518139,"uuid":"745266593","full_name":"217heidai/ImageBuilder-ImmortalWrt","owner":"217heidai","description":"基于 ImmortalWrt 官方 ImageBuilder 的自定义旁路网关固件","archived":true,"fork":false,"pushed_at":"2024-05-24T06:36:24.000Z","size":425,"stargazers_count":12,"open_issues_count":0,"forks_count":9,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-05-09T21:09:28.075Z","etag":null,"topics":["imagebuilder","immortalwrt"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/217heidai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-01-19T00:54:33.000Z","updated_at":"2025-05-03T12:03:59.000Z","dependencies_parsed_at":"2024-02-01T02:26:11.110Z","dependency_job_id":"3dbee897-773f-4032-889d-801f6be29531","html_url":"https://github.com/217heidai/ImageBuilder-ImmortalWrt","commit_stats":null,"previous_names":["217heidai/imagebuilder-immortalwrt"],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/217heidai%2FImageBuilder-ImmortalWrt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/217heidai%2FImageBuilder-ImmortalWrt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/217heidai%2FImageBuilder-ImmortalWrt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/217heidai%2FImageBuilder-ImmortalWrt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/217heidai","download_url":"https://codeload.github.com/217heidai/ImageBuilder-ImmortalWrt/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254442409,"owners_count":22071864,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["imagebuilder","immortalwrt"],"created_at":"2024-11-19T16:48:54.935Z","updated_at":"2025-05-15T23:32:55.557Z","avatar_url":"https://github.com/217heidai.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ImageBuilder-ImmortalWrt\n***不再更新，旁路网关编译合并到 [OpenWrt-Builder](https://github.com/217heidai/OpenWrt-Builder)***  \n基于 ImageBuilder 定制的 ImmortalWrt 旁路网关。组件大量精简，仅适合虚拟机安装（精简了实体网卡驱动）。\n\n# 旁路网关\n![](docs/旁路网关.png)\n\n# 定制内容\n## 精简\n本着够用原则，非必要组件全部精简。\n1. 精简 f2fs 磁盘驱动、mount 挂载相关组件。\n2. 精简全部音频设备驱动、音频播放组件。\n3. 精简全部实体卡驱动。仅保留 e1000、e1000e、vmxnet3 虚拟网卡驱动，仅适合虚拟机安装。\n4. 精简全部 usb 相关组件。\n5. 精简全部 pppoe 相关组件。旁路网关不负责拨号。\n6. 精简全部 ipv6 相关组件。\n\n## 添加\n所有新增组件，均来自 ImmortalWrt 官方。\n1. 添加 argon 主题。\n2. 添加定时重启。\n3. 添加 passwall。\n4. 补全页面中文翻译。\n\n# 安装\n注意：\n1. 由于精简了实体网卡驱动，仅支持虚拟机安装。\n2. 作为旁路网关，仅需分配一张网卡用作 LAN 口即可。\n\n## 虚拟机安装\n推荐使用 PVE LXC 容器安装，占用资源极少。\n\n### PVE LXC 容器安装方式\nWEB 页面无法直接创建 OpenWrt LXC 容器，此处需要使用 shell 命令进行创建。\n1. 上传 `immortalwrt-X.X.X-x86-64-generic-rootfs.tar.gz` 文件至 PVE `/var/lib/vz/template/cache` 目录。\n2. 使用 shell 命令创建 LXC 容器\n    ```bash\n    pct create 100 \\\n        local:vztmpl/immortalwrt-X.X.X-x86-64-generic-rootfs.tar.gz \\\n        --rootfs local-lvm:2 \\\n        --ostype unmanaged \\\n        --hostname OpenWrt \\\n        --arch amd64 \\\n        --cores 4 \\\n        --memory 2048 \\\n        --swap 0 \\\n        -net0 bridge=vmbr0,name=eth0\n    ```\n    参数说明：\n    ```bash\n    100\t\t\n        容器编号，请根据实际情况设置。\n    local:vztmpl/immortalwrt-X.X.X-x86-64-generic-rootfs.tar.gz\t\n        容器模板，local:vztmpl 指向 /var/lib/vz/template/cache 目录，是 PVE 默认 CT 模板存放目录。immortalwrt-X.X.X-x86-64-generic-rootfs.tar.gz 为待安装文件。\n    rootfs local-lvm:2\n        根磁盘位置，local-lvm 可以根据实际情况修改为其他存储位置，2 表示磁盘大小为 2G。\n    ostype unmanaged\n        系统类型。\n    hostname ImmortalWrt\n        容器名称。\n    arch amd64\n        系统架构，amd64。\n    cores 4\n        分配给容器的 CPU 核心数。\n    memory 2048\n        分配给容器的内存大小，这里是 2G。\n    swap 0\n        分配给容器的交换区大小，建议设置为 0。\n    net0 bridge=vmbr0,name=eth0\n        容器网络设置，为容器中增加网卡 eth0 ，桥接到主机的 vmbr0 网卡。\n    ```\n3. 修改 LXC 容器配置文件 `/etc/pve/lxc/100.conf`（100 为以上创建容器时的容器编号），在文末增加：\n    ```bash\n    onboot: 1\n    features: fuse=1,nesting=1\n    lxc.include: /usr/share/lxc/config/openwrt.common.conf\n    lxc.cgroup2.devices.allow: c 108:0 rwm\n    lxc.mount.entry: /dev/net/tun dev/net/tun none bind,create=file\n    lxc.cap.drop:\n    ```\n    参数说明：\n    ```bash\n    onboot: 1\n        开机自启动。\n    features: fuse=1,nesting=1\n        特权容器，允许嵌套。不开特权容器会出现各种奇怪问题，如 dnsmasq 无法启动。\n    lxc.include: /usr/share/lxc/config/openwrt.common.conf\n        引用 PVE 自带的 OpenWrt 配置。\n    lxc.cgroup2.devices.allow: c 108:0 rwm\n        lxc 运行一些服务类的系统必须的。\n    lxc.mount.entry: /dev/net/tun dev/net/tun none bind,create=file\n        挂载 tun 到 lxc 内。\n    lxc.cap.drop:\n        取消 openwrt.common.conf 里面 对 cap 的限制，否则 openclash 等服务无法使用。\n    ```\n\n### 其它虚拟机安装方式\n此处不再赘述。\n\n## 配置\n1. 默认账号 `root`，密码 `password`。\n2. 默认 LAN 口 IP 为 `192.168.1.5`。通过 `/etc/config/network` 修改，修改后需重启。\n3. LAN 口网关修改为主路由 IP 地址。\n4. LAN 口 DNS 修改为主路由 IP 地址。作为旁路网关，DNS 服务仅包含 dnsmasq，未打包 AdGuardHome、MosDNS、SmartDNS 等高级 DNS 服务。如有需求，建议单独部署高级 DNS 服务，将旁路网关的 DNS 指过去即可。可参考 [NestingDNS](https://github.com/217heidai/NestingDNS)，一款尝试 AdGuardHome、MosDNS、SmartDNS 套娃使用最佳实践的 DNS 服务。\n5. 作为旁路网关，LAN 口 DHCP 默认已关闭，需主路由进行 DHCP。（如开启 DHCP 服务，则变为旁路路由模式）","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F217heidai%2Fimagebuilder-immortalwrt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F217heidai%2Fimagebuilder-immortalwrt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F217heidai%2Fimagebuilder-immortalwrt/lists"}