hyper-v ubuntu2204指定静态ip地址

发布时间:2023年12月20日

虚拟机静态IP设置

虚拟机每次重新启动,都会动态分配IP,这导致我们无法使用一个固定的ip连接到虚拟机内部。解决该问题的最直接有效的办法就是给虚拟机绑定2张网卡,一张用于连接外网、一张用于连接内网。

init 0 关机,也可以从管理软件上关机,都可

在这里插入图片描述

点击hyper-v 管理器右侧虚拟交换机管理器

在这里插入图片描述

新建一个内部 虚拟交换机

注意,图上选中的是外部,您别选错了。选内部
在这里插入图片描述

内部虚拟交换机其命名为static(您开心就好,什么名都行,能找到就成啊),点应用,然后确定

在这里插入图片描述

打开控制面板,网络和 Internet,点击查看网络状态和任务

在这里插入图片描述

点更改适配器设置

在这里插入图片描述

在static网卡上边,右键,点属性

在这里插入图片描述

在箭头位置点属性(TCP/IPv4)

在这里插入图片描述

点击使用下面的IP地址,设置IP地址为:192.168.xxx.xxx,点一下子网掩码,会自动计算。DNS按图分配即可。点击确定。首选DNS服务器设置成114.114.114.114在这里插入图片描述

进入hyper-v管理器,在目标虚拟机上,点击设置添加硬件网络适配器添加

在这里插入图片描述

虚拟交换机这里选static(刚刚创建的),然后点应用、确定

在这里插入图片描述

此时硬件这里有了两块网卡,Default Switch 和 static,Default 用于连接外网,static用于虚拟机之间通信,或SSH远程连接等。别急,还需要配置一下才能生效

在这里插入图片描述

启动并连接虚拟机

在这里插入图片描述

进入root用户

在这里插入图片描述

vim /etc/netplan/00-installer-config.yaml

先看一下原有内容

# This is the network config written by 'subiquity'
network:
  ethernets:
    eth0:
      dhcp4: true
  version: 2

我们在ethernets下边再追加一组网卡信息

# This is the network config written by 'subiquity'
network:
  ethernets:
    eth0:
      dhcp4: true
    eth1:
      dhcp4: false
      addresses:
      - 192.168.66.254/24
      nameservers:
        addresses: [114.114.114.114]
  version: 2

dhcp4 设置为 false
addresses 设置为192.168.66.xxx/24,这个xxx只要在[1,255)之间,且跟您在控制面板中,对static网卡设置的ip不一样即可;控制面板中对static网卡设置的ip会作为路由;至于为什么后边有/24,大家自行科普一下计算机网络内容,如网段的定义等
eth0就是第一块网卡,我们追加的网卡命名为eth1(0的基础上加1),代表第二块网卡
nameservers这一组对应的是dns的地址,可以不设置
所以最简的设定为:

# This is the network config written by 'subiquity'
network:
  ethernets:
    eth0:
      dhcp4: true
    eth1:
      dhcp4: false
      addresses:
      - 192.168.66.254/24
  version: 2

此时,执行netplan apply,让配置生效

此时此刻,此情此景,您可以使用ssh+静态ip或动态ip连接虚拟机了

在这里插入图片描述用动态ip再连接一次
在这里插入图片描述这也就是一台机器两个ip的实现方式。撒花~,呱唧呱唧

若遇到ssh无法连接的问题,如下:

ssh dawn@192.168.66.1
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ED25519 key sent by the remote host is
SHA256:xxxxxxxxxx.
Please contact your system administrator.
Add correct host key in C:\\Users\\xxx/.ssh/known_hosts to get rid of this message.
Offending ED25519 key in C:\\Users\\xxx/.ssh/known_hosts:29
Host key for 192.168.66.1 has changed and you have requested strict checking.
Host key verification failed.

使用ssh-keygen -R "XXX.XXX.XXX.XXX",将key移除就好了

 ssh-keygen -R "192.168.66.1"
# Host 192.168.66.1 found: line 29
C:\Users\xxx/.ssh/known_hosts updated.
Original contents retained as C:\Users\xxx/.ssh/known_hosts.old
文章来源:https://blog.csdn.net/dawnto/article/details/135096182
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。