因为项目中用到了redis和ZooKeeper,因此今天在我的笔记本上安装了个虚拟机,搭建了个linux开发环境。整个过程当中,关于虚拟机安装、软件安装等等这些都没什么好说的,就是在设置虚拟机中linux系统访问外网时,不是访问不了外网就是ip丢失,因此有必要把关于虚拟机中linux系统网络设置作个详细说明,以备后用,也方便其余遇到一样问题的人们借鉴: 虚拟机安装完成之后,能够查看到虚拟出三种网络:VMnet0、VMnet1和VMnet8。查看如图:
这三种网络分别为本地链接、自链接和NAT链接,表示未来虚拟机中操做系统与外部网络采用的策略。此外,咱们从主机(个人我的笔记本电脑)的网络链接中也能够看到生成了两个虚拟机网卡:
那有人会说这里怎么没有VMnet0呢?这是由于VMnet0这种链接,虚拟机不从属于主机,地位和主机同等,下边会详细描述。linux
下边就详细描述一下这三种网络设置: 第一:VMnet0是本地链接,也叫桥链接。这种链接,实质上就是虚拟出来一台机器,虚拟机和主机处在同等地位,共用同一个局域网,它也会占用局域网段中的一个ip;这个时候,主机怎么连外网,虚拟机就怎么连,那多是有线的也多是无线的,这由主机具体状况决定。 设置虚拟机要使用桥链接:在虚拟机上右键--->设置: 主机cmd下执行ipconfig命令,查看(我采用的是)无线局域网ip: 在linux中执行ifconfig查看的ip也是31网段的一个ip: 这个时候若是主机连有外网,则虚拟机也能够连外网。 第二:VMnet1是自链接,虚拟机只能和主机进行通讯,处于同一网段,它的ip是VMnet1网段中的一个;即便主机有外网,虚拟机也连不上外网。 设置虚拟机要使用自链接。 主机cmd下执行ipconfig命令,查看VMnet1的ip: 在linux中执行ifconfig查看的ip也是17网段的一个ip: 这个时候即便主机连有外网,虚拟机也没法链接外网. 第三:VMnet8是NAT链接,虚拟机把主机ip做为外网ip,在这个基础之上虚拟出一个网络,虚拟出来一个网段;若是主机有外网,则虚拟机也能够连外网,链接原理就是从虚拟机找到主机网关,而后再找到主机外边的外网网关。 设置虚拟机要使用NAT链接。 cmd下执行ipconfig命令,查看VMnet8的ip: 在linux中执行ifconfig查看的ip也是248网段的一个ip: 这个时候若是主机连有外网,则虚拟机也能够连外网。 至于咱们实际开发过程当中采用哪种,由本身的使用情形决定,在有外网的状况下,使用VMnet0和VMnet8多一些,若是不须要使用外网又不想受外网干扰则采用VMnet1。
而对于VMnet1和VMnet8,咱们还能够具体设置ip等信息:redis
还有一种意外状况,虚拟机中安装好linux系统以后,若是执行ifconfig没有ip地址,则能够执行命令dhclient ens33;可是这样虽然此次能生成ip,可是下次启动linux,又没了ip,要想每次都自动生成ip,则:
进入/etc/sysconfig/network-scripts/
用vi 修改ifcfg-ens33中的ONBOOT=no为ONBOOT=yes
保存并退出
重启网络服务service network restart网络
这是我遇到一些个状况,详列于此,但愿对朋友们有所帮助。固然,有不周全之处,还请包涵。