近期在虚拟机中使用linux操作系统,之前使用NAT方式上网,能够畅通无阻。可是使用SSHclient连接linux虚拟机就必须为其指定固定的IP地址。依照网上的配置方法使用桥接方式,这种方式是能够的。
可是问题是。我们使用的是校园网client()。在虚拟机中须要登录该client才干使用,貌似没有linux版。再说了仅仅有一个账号呢。要实现这种需求。我们之前说了NAT方式是能够上网的,然后使用HOST-ONLY给其指定IP地址,使用两张网卡就能解决问题。
一、NAT模式
特点:
1、假设主机能够上网。虚拟机能够上网
2、虚拟机之间不能ping通
3、虚拟机能够ping通主机(此时ping虚拟机的网关。即是ping主机)
4、主机不能ping通虚拟机
应用场景:
虚拟机仅仅要求能够上网,无其他特殊要求,满足最一般需求
配置方法:
连接方式 选择 网络地址转换(NAT)
高级-控制芯片 选择 PCnet-FAST III
高级-混杂模式 拒绝
高级-接入网线 √
(虚拟机ip自己主动获取)
ip样式:
ip 10.0.2.15
网关 10.0.2.2
注意此处的网关在不同虚拟机中可能是同一个值,可是这归属于不同的NAT Engine,因此实际上各个虚拟机用的不是同一个网关
原理:
虚拟机的请求传递给NAT Engine,由它来利用主机进行对外的网络訪问,返回的数据包再由NAT Engine给虚拟机。
二、Host-only Adapter模式
特点:
1、虚拟机不能够上网
2、虚拟机之间能够ping通
3、虚拟机能够ping通主机(
4、主机能够ping通虚拟机
应用场景:
在主机无法上网的情况下(主机能够上网的情况下能够用host-only。也能够用桥接)。须要搭建一个模拟局域网,全部机器能够互訪
配置方法:
连接方式 选择 仅主机(Host-Only)适配器
界面名称 选择 VirtualBox Host-Only Ethernet Adapter
高级-控制芯片 选择 PCnet-FAST III
高级-混杂模式 拒绝
高级-接入网线 √
原理:
通过VirtualBox Host-Only Network网卡进行通信,虚拟机以此ip作为网关,因此模拟了一个本机与各个虚拟机的局域网。如名称所指,应该是无法上网的
三、 配置过程
1. 加入网卡
设置虚拟机配置信息,选择”网络“,进行设置加入两张网卡。例如以下图所看到的
图1 网卡1-NAT连接方式
图2 网卡2-Host-only连接方式
点击管理-全局设定-网络,设置Host-only相关參数,为其指定IP
打开网络和共享中心(win7)-更改适配器配置-选择VirtualBox Host-only Network-右键-属性-IPv4,设置例如以下:
2、 启动虚拟机进入linux系统进行相关网络配置
在系统-首选项-网络连接
这个就是我们刚刚加入的两个网卡。我这里重名名了,分别为eth1和eth0,点击编辑eth1(Host-only连接方式)。进行例如以下设置:
进入终端编辑网卡eth0
vim /etc/sysconfig/network-scripts/ifcfg-eth0
须要改动例如以下几个參数:
ONBOOT =yes
DEFROUTE=yes
BOOTPROTO=dhcp
3. 重新启动网络
service networt restart
这下就行上网了,也能使用SSHclient了。打开putty输入192.168.56.103就行连接上虚拟机了
须要注意的是,假设SSH终端连接不上可能存在的问题:
SSHD服务没有开启
解决的方法:service sshd start
防火墙没有关闭:
解决的方法:service iptables stop