NAT模式实现局域网物理机与虚拟机的互通访问「建议收藏」

NAT模式实现局域网物理机与虚拟机的互通访问「建议收藏」玩过虚拟机的朋友都知道,不管是vbox还是vm,最常用的网络设置也不外乎3种:1、桥接模式:此模式下,虚拟机的操作系统就像和物理机同一段网络中的物理机一样,它可以访问网络中的任何机器,同时只要物理机可以访问网络,虚拟机也可以实现上网。此模式是懒人模式首选!但换来一个问题就是,如果你的物理机网络IP发生变化,虚拟机的IP也会相应的改变。如果IP变化对虚拟机有影响的环境,此模式慎用!

大家好,又见面了,我是你们的朋友全栈君。

玩过虚拟机的朋友都知道,不管是vbox还是vm,最常用的网络设置也不外乎3种:

1、桥接模式:此模式下,虚拟机的操作系统就像和物理机同一段网络中的物理机一样,它可以访问网络中的任何机器,同时只要物理机可以访问网络,虚拟机也可以实现上网。此模式是懒人模式首选!但换来一个问题就是,如果你的物理机网络IP发生变化,虚拟机的IP也会相应的改变。如果IP变化对虚拟机有影响的环境,此模式慎用!

2、Host-only模式:在一些网络环境中,由于安全,调试等原因,可能需要讲虚拟机和真实的物理环境隔离开来,那么此模式是首选。此模式下的所有虚拟机可以相互访问,但和真实的物理网络环境是隔离开的,此模式下的IP信息,是由host-only虚拟网络的DHCP服务器来分配的。当然了,此模式由于是和真实环境隔离开的,如果要上网,可能比较麻烦,博主没试过,有兴趣的可以自己研究下。

3、NAT模式:使用NAT模式,就是让虚拟机借助NAT(网络地址转换)功能,通过物理机来访问网络。此模式下,如果物理机可以访问互联网,那么虚拟机也可以,默认情况下 和物理机同一网络中的其它机器不能访问虚拟机,但虚拟机可以访问其它物理机。

上面说默认情况下,物理机的其它机器不能访问NAT模式下的虚拟机,但是通过端口转发功能可以实现物理机和NAT模式下的虚拟机的相互通信功能,下面说说如何设置:以vm为例(vbox一样)

打开vm的虚拟网络编辑器,如下:

添加一个NAT模式的网络,然后点开NAT设置,

在端口转发一项里面,添加,下面是一个示例:

其中,主机端口:即是网络中其它机器访问此物理机的端口。也是在xshell里面配置ssh的端口或者要访问的ftp服务器的端口。

虚拟机IP:也就是NAT模式下,分配给虚拟机的IP地址

虚拟机端口:是虚拟机设置的供外部访问的端口。比如22 80等。

以下是主要的端口转发设置。

这样设置以后,那么在其它物理机的xshell的连接里面,可以这样配置:(假设其它物理机访问宿主机的IP为:10.0.100.23)

上图中,9999端口,也就是在刚才NAT设置里面添加的端口号,此端口是有NAT开放出来,也是宿主机对外提供转发功能的端口。

其它物理机,通过宿主机的IP和9999端口,访问到NAT设置的虚拟网卡,然后NAT对该请求进行转发到IP为192.168.237.10,端口22进行处理,192.168.237.10:22,此IP和端口也就是NAT模式下的真实虚拟机的IP,端口。

在Xshell里面,也可以直接SSH过去,ssh root@10.0.100.23:9999。登录成功后,输入ifconfig,看到的IP信息一定是192.168.237.10,也可以查看到端口22是打开并在连接使用中

如果对以上设置不清楚的地方,可以参考: http://blog.csdn.net/u011031430/article/details/77131830

在这里插入图片描述
以上图片的配置
物理机网络中其它主机访问虚拟机服务方式则是 物理机IP:9999

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/149798.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • VMWare 安装Ubuntu 16.04

    VMWare 安装Ubuntu 16.041、新建虚拟机(1)点击文件–>新建虚拟机(2)选择自定义(高级)–> 下一步(3)选择Workstation12.0 –> 下一步(

    2022年8月2日
    3
  • 微博RPC框架Motan

    微博RPC框架Motan原文来自 http blog csdn net autfish article details 从 14 年开始就陆续看到新浪微博 RPC 框架 Motan 的介绍 时隔两年后 微博团队终于宣布开源轻量级 RPC 框架 Motan 项目地址 https github com weibocom motan 项目文档介绍比较详细 搭建开发环境非常简单 如果只是使用

    2025年6月24日
    0
  • flex垂直居中,水平居中和其他布局方式

    flex垂直居中,水平居中和其他布局方式flex水平垂直居中<divclass=”content”><divclass=”item”>1</div><divclass=”item”>2</div><divclass=”item”>3</div></div>.content{display:flex;align-items:center;justify-content:center;bord

    2022年6月11日
    28
  • javascript 基础_JavaScript高级编程

    javascript 基础_JavaScript高级编程JavaScript知识总结(高级篇)1.深入基础1.1数据类型1.分类:-基本类型-String:任意字符串-Number:任意的数字-boolean:true/false-undefined:未定义-null:空-引用(对象)类型-Object:任意对象-Function:一种特别的对象(可以执行)-Array:一种特别的对象(数值下标,内部数据是有序的)2.判断:-typeof:可以判断:undefined、数值、字符串、布尔值不能判断:null与object

    2022年8月20日
    4
  • linux添加静态路由命令_linux route add永久路由

    linux添加静态路由命令_linux route add永久路由linux下静态路由修改命令方法一:添加路由routeadd-net192.168.0.0/24gw192.168.0.1routeadd-host192.168.1.1dev192.168.0.1删除路由routedel-net192.168.0.0/24gw192.168.0.1add增加路由del删除路由-net设置到某…

    2022年10月4日
    0
  • 数组反转两种方法[通俗易懂]

    数组反转两种方法[通俗易懂]//数组反转 for(inti=0;i<arr.length/2;i++){ Stringt=””; t=arr[i]; arr[i]=arr[arr.length-1-i];//length-1 arr[arr.length]=t; } //方法二 for(inti=0,j=arr.length;i<arr.length/2;i++,j–){ Stringt=arr[i..

    2022年5月20日
    36

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号