You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Host Windows、Guest Ubuntu环境下为Ubuntu虚拟机设置静态IP并解决网络连通问题

Host Windows、Guest Ubuntu环境下为Ubuntu虚拟机设置静态IP并解决网络连通问题

老哥我太懂你折腾6+小时还没搞定的崩溃了!刚好我之前在类似的Windows静态IP宿主机+Ubuntu虚拟机环境踩过全坑,给你一步步捋清楚怎么把静态IP配好还能正常联网,满足你做自托管GitHub Action Runner的需求。

先搞清楚核心前提:

你宿主机是静态IP(DHCP禁用),所以虚拟机用桥接模式时,不能直接用宿主机的IP(会导致IP冲突),得选和宿主机同网段里没被占用的静态IP,这是基础!


第一步:先收集宿主机的关键网络信息

打开Windows的命令提示符(CMD),敲ipconfig /all,找到你正在用的以太网适配器(别找无线或VPN适配器,你是专用服务器肯定用的有线),把这几个信息抄下来:

  • IPv4地址:比如宿主机是192.168.1.100
  • 子网掩码:比如255.255.255.0(对应CIDR格式的/24)
  • 默认网关:比如192.168.1.1
  • DNS服务器:可以用公共DNS比如8.8.8.8,也可以用你内网的DNS

第二步:配置VirtualBox的桥接网络

先把Ubuntu虚拟机关掉,打开VirtualBox的设置面板:

  • 找到「网络」选项卡,选择「网卡1」
  • 连接方式选「桥接适配器」
  • 界面名称选你刚才在Windows里查到的那个以太网适配器(别选错!)
  • 重点!一定要勾选「接入网线」(很多人漏了这个,相当于虚拟机没插网线,肯定没网)
  • 确认设置后启动虚拟机

第三步:配置Ubuntu 24.04的静态IP(用netplan,这是当前版本的标准配置方式)

Ubuntu 24.04已经不用老版本的/etc/network/interfaces了,统一用netplan管理,步骤如下:

  1. 登录Ubuntu,打开终端,先看一下你的netplan配置文件叫什么:

    ls /etc/netplan/
    

    一般是类似00-installer-config.yaml或者01-netcfg.yaml的文件,记下来这个文件名。

  2. 先备份原配置(以防改错了能恢复):

    sudo cp /etc/netplan/00-installer-config.yaml /etc/netplan/00-installer-config.yaml.bak
    

    (把文件名换成你刚才查到的那个)

  3. 编辑配置文件,用nano编辑器就行:

    sudo nano /etc/netplan/00-installer-config.yaml
    

    把里面的内容替换成下面的模板,注意替换成你之前收集的宿主机信息:

    network:
      ethernets:
        enp0s3:  # 这里是你的虚拟机网卡名,用`ip addr`命令可以查到,找带BROADCAST标记的那个(比如enp0s8)
          addresses: [192.168.1.101/24]  # 这里填你要给虚拟机的静态IP,/24对应子网掩码255.255.255.0
          gateway4: 192.168.1.1  # 填宿主机的默认网关
          nameservers:
            addresses: [8.8.8.8, 1.1.1.1]  # 填DNS服务器,也可以用宿主机的DNS
      version: 2
    

    ⚠️ 敲黑板!YAML语法是个矫情鬼:

    • 缩进必须用空格,绝对不能用Tab键!
    • 每个冒号:后面必须空一格,比如addresses: [xxx],冒号后面的空格不能少!
    • 网卡名一定要对应,填错了配置也不会生效。
  4. 保存退出nano:按Ctrl+O,回车确认保存,再按Ctrl+X退出。

  5. 应用配置并验证:

    sudo netplan apply
    

    如果没报错,就运行ip addr看你的网卡IP是不是你设置的静态值;然后ping一下网关:

    ping 192.168.1.1
    

    能通的话再ping外网:

    ping google.com
    

    都通就说明网络正常了!


第四步:排查你遇到的「桥接后没网」常见坑

如果按上面步骤来还是没网,大概率是踩了这些坑:

  • 坑1:桥接适配器选错了:一定要选宿主机正在用的有线以太网,别选VPN、无线或者其他虚拟适配器
  • 坑2:YAML语法错误:再回去检查缩进、冒号后面的空格,哪怕错一个字符都可能导致配置失效
  • 坑3:IP冲突:你选的虚拟机静态IP已经被内网其他设备占用了?在Windows里ping一下这个IP,如果能通就换一个没被用的
  • 坑4:宿主机防火墙拦截:检查Windows Defender防火墙,有没有拦截虚拟机的流量?可以临时关闭防火墙测试,或者添加入站/出站规则允许虚拟机网段的所有流量
  • 坑5:VirtualBox没勾「接入网线」:这个我之前踩过,没勾的话桥接等于白搭,虚拟机根本连不上物理网络

最后验证GitHub Action Runner可用性

静态IP配置好后,你就可以按照GitHub的文档安装自托管Runner了,因为IP是固定的,防火墙那边直接把这个静态IP加入白名单就行,再也不用担心IP变动导致的访问问题。

备注:内容来源于stack exchange,提问作者Uuuuuumm

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 13:53:20