小飞知识库 | YeLu🤠MiLu🤪 小飞知识库 | YeLu🤠MiLu🤪
  • 函数式编程
  • Spring
  • SpringMVC
  • SpringBoot
  • SpringCloud
  • Mybatis
  • JVM
  • JUC并发编程
  • 设计模式
  • 单元测试
  • Redis
  • RabbitMQ
  • mysql
  • oracle
  • linux
  • nginx
  • docker
  • elasticSearch
  • windows
  • 虚拟机
  • 监控系统
  • https
  • 内网穿透
  • 前端文章

    • JavaScript
  • 页面

    • HTML
    • CSS
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • TypeScript
    • JS设计模式总结
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 版本管理

    • Git笔记
  • 项目构建

    • maven
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
  • JAR包相关
  • 关于
  • 收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

YeLu

爱技术的YeLu🤠
  • 函数式编程
  • Spring
  • SpringMVC
  • SpringBoot
  • SpringCloud
  • Mybatis
  • JVM
  • JUC并发编程
  • 设计模式
  • 单元测试
  • Redis
  • RabbitMQ
  • mysql
  • oracle
  • linux
  • nginx
  • docker
  • elasticSearch
  • windows
  • 虚拟机
  • 监控系统
  • https
  • 内网穿透
  • 前端文章

    • JavaScript
  • 页面

    • HTML
    • CSS
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • TypeScript
    • JS设计模式总结
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 版本管理

    • Git笔记
  • 项目构建

    • maven
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
  • JAR包相关
  • 关于
  • 收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • linux笔记

  • nginx笔记

  • docker笔记

  • windows笔记

  • ElasticSearch

  • 虚拟机

    • vmware

    • VitualBox

      • 安装vitualBox
      • 安装Vagrant
      • 安装centos7
        • 初始化centos7
        • 启动虚拟机
        • 连接虚拟机
          • vagrant 连接
          • 其他工具连接
          • ①查看自己物理机virtualbox的主机ip
          • ②根据子网地址我们自定义一个ip地址:192.168.10.3
          • ③重新加载虚拟机,重置配置文件
          • ④连接虚拟机,进行网络测试
        • 修改linux的yum源
        • 永久配置 DNS 解析
          • 方法 1:修改网络接口配置文件
          • 方法 2:使用 nmcli 命令(推荐)
        • 常见问题
          • Name or service not known
          • 1. 检查虚拟机网络连通性
          • 2. 检查DNS配置
          • 3. 检查Vagrant网络配置
  • 监控系统

  • 运维
  • 虚拟机
  • VitualBox
YeLu🤠
2024-12-19
目录

安装centos7

# 初始化centos7

进入你想初始化镜像的文件夹

进入当前目录cmd

运行初始化镜像命令 Vagrant官方镜像仓库](https://app.vagrantup.com/boxes/search)

vagrant init centos/7
1

# 启动虚拟机

同目录下执行如下命令

vagrant up
1

virtualbox 会自动同步启动虚拟机

注意:

启动成功后会自动创建两个账号,不过这两个账号目前是不支持远程连接的需要开启才行

vagrant/vagrant

root/vagrant

# 连接虚拟机

# vagrant 连接

输入如下命令进行连接虚拟机

vagrant ssh
1

# 其他工具连接

默认情况下是通过127.0.0.1也就是本地地址及通过端口转发来进行访问的虚拟机,这样对于开发不太方便,我们可以去修改固定的IP地址,操作如下:

# ①查看自己物理机virtualbox的主机ip

ipconfig
1

或者可以自己修改网络适配器手动配置一个ip地址

# ②根据子网地址我们自定义一个ip地址:192.168.10.3

编辑生成的Vagrantfile文件

config.vm.network "private_network", ip: "192.168.10.3"
1

# ③重新加载虚拟机,重置配置文件

vagrant reload
1

# ④连接虚拟机,进行网络测试

连接虚拟机vagrant ssh

默认只允许ssh登录方式,为了后来操作方便,文件上传等,我们可以配置允许账号密码登录

vagrant ssh 进去系统之后

vi /etc/ssh/sshd_config

开启远程连接权限

将 PasswordAuthentication no 改为 PasswordAuthentication yes

开启root密码登入

将PermitRootLogin状态改为yes,开启root登入

重启sshd服务

systemctl restart sshd

# 修改linux的yum源

备份旧yum源

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
1

使用新yum源

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
1

生成缓存

yum makecache
1

# 永久配置 DNS 解析

# 方法 1:修改网络接口配置文件

1、确定网络接口名称

运行命令查看当前使用的网络接口(如 eth0、enp0s3 等):

ip addr
# 或
nmcli device status
1
2
3

2、编辑网络配置文件

进入 /etc/sysconfig/network-scripts/ 目录,编辑对应的接口配置文件(如 ifcfg-eth0):

sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0
1

3、添加 DNS 配置

在文件中添加或修改以下行(以 Google DNS 为例):

DNS1=8.8.8.8
DNS2=8.8.4.4
PEERDNS=no  # 阻止 DHCP 覆盖 DNS 设置
1
2
3

4、重启网络服务

sudo systemctl restart network
1

# 方法 2:使用 nmcli 命令(推荐)

1、查看当前连接名称

nmcli connection show
# 输出类似 "System eth0" 或 "Wired connection 1"

[root@localhost ~]# nmcli connection show
NAME         UUID                                  TYPE      DEVICE 
System eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0   
System eth1  9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04  ethernet  eth1   
1
2
3
4
5
6
7

2、修改 DNS 设置

替换 CONNECTION_NAME 为实际的连接名称:

sudo nmcli connection modify <CONNECTION_NAME> ipv4.dns "8.8.8.8 8.8.4.4"
sudo nmcli connection modify <CONNECTION_NAME> ipv4.ignore-auto-dns yes  # 禁用 DHCP 的 DNS

# 参考如下
sudo nmcli connection modify 9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04 ipv4.dns "8.8.8.8 8.8.4.4"
sudo nmcli connection modify 9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04 ipv4.ignore-auto-dns yes  # 禁用 DHCP 的 DNS
1
2
3
4
5
6

3、应用配置

sudo nmcli connection down <CONNECTION_NAME> && sudo nmcli connection up <CONNECTION_NAME>

# 参考如下
sudo nmcli connection down 9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04 && sudo nmcli connection up 9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04
1
2
3
4

# 常见问题

# Name or service not known

ping: www.baidu.com: Name or service not known

# 1. 检查虚拟机网络连通性

首先确认虚拟机是否能访问外部网络:

ping 8.8.8.8  # 测试是否能连接公共DNS服务器
1
  • 如果能ping通IP但无法解析域名 → 问题出在DNS配置。
  • 如果连IP也无法ping通 → 问题出在网络连接(如网关、防火墙、Vagrant网络模式配置)。

# 2. 检查DNS配置

查看DNS服务器配置:

cat /etc/resolv.conf
1

正常情况应包含有效的DNS服务器地址,例如:

nameserver 8.8.8.8      # Google DNS
nameserver 114.114.114.114  # 国内公共DNS
1
2

如果DNS配置错误或缺失:

  • 临时修复:手动修改 /etc/resolv.conf(重启后可能失效):

    echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
    
    1
  • 永久修复:修改网络管理器配置(不同系统操作不同):

    • Ubuntu (Netplan):

      sudo nano /etc/netplan/50-cloud-init.yaml  # 或类似文件名
      # 添加DNS配置
      network:
        ethernets:
          eth0:
            dhcp4: true
            nameservers:
              addresses: [8.8.8.8, 114.114.114.114]
      
      1
      2
      3
      4
      5
      6
      7
      8

      应用配置:

      sudo netplan apply
      
      1
    • CentOS:

      sudo nmcli con mod eth0 ipv4.dns "8.8.8.8 114.114.114.114"
      sudo systemctl restart NetworkManager
      
      1
      2

# 3. 检查Vagrant网络配置

Vagrant默认使用NAT网络模式,虚拟机依赖宿主机进行NAT转发。如果宿主机DNS有问题,可能导致虚拟机无法解析域名。尝试以下方法:

  • 方法1:启用Vagrant自动DNS配置

    • 在 Vagrantfile 中添加以下配置,让Vagrant自动管理DNS:

    • config.vm.provision "shell", run: "always", inline: <<-SHELL
        echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
      SHELL
      
      1
      2
      3
    • 重启虚拟机:

    • vagrant reload
      
      1

      **注意:**这个方式每次都必须执行vagrant reload 不然不生效

  • 方法2:切换为桥接或公有网络

    • 在 Vagrantfile 中启用公有网络,使虚拟机直接从路由器获取IP和DNS:

    • config.vm.network "public_network"
      
      1
    • 重启后重新测试:

    • vagrant reload
      
      1
最近更新: 2025/07/30, 15:37:56
安装Vagrant
Docker安装prometheus

← 安装Vagrant Docker安装prometheus→

最近更新
01
服务端配置
07-30
02
frp 安装
07-30
03
Prometheus采集Springboot应用
02-20
更多文章>
Theme by Vdoing | Copyright © 2019-2025 | YeLu🤠MiLu🤪 | MIT License 蜀ICP备2024116879号 | 川公网安备51012202001998号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
欢迎你,我的朋友
看板娘