在Ubuntu16.04中搭建虚拟网络

最近想在我的渣笔记本上部署比较复杂的网络拓扑环境,然而4G的小内存并不允许像高性能服务器一样随意开虚拟机,利用传统虚拟化技术如vmware或virtualbox最多只能开2~3个虚拟机,而像轻量化的mininet封闭性又不是太好,不能满足我的实(zhuang)验(bi)需求。于是我打算在Ubuntu系统中先用virtualbox开一个虚拟机,然后在虚拟机和宿主机中再部署docker容器。这样既有分层结构,又有分布式结构,可以进行的实验内容就可以大大扩展。话不多说,下面是我的部署过程:

  • Ubuntu16.04中首先安装virtualbox:
# apt-get install virtualbox
  • 打开virtualbox导入Ubuntu16.04镜像(我下载在U盘中)进行安装,过程非常简单,这里不再赘述。
  • 目前我们有了两层网络,但是virtualbox默认的网络连接方式是NAT,在这种状态下只能虚拟机连接主机,而主机不能进入虚拟机,需要改变连接方式。这里我选择host-only这种网络设置,在这种配置下虚拟机可以配置独立ip,可以和主机、其他虚拟机相互通信,下面是配置方式:
1、设置主机接口:Ctrl + G,在Network中添加一块虚拟网卡vboxnet0,可以设置ipv4地址,   默认是192.168.56.1,取消DHCP。
2、设置虚拟机内部接口:Ctrl + S,在Network中的attached to选项选择Host-only Adapter,Name选择vboxnet0,这时虚拟机网卡和外部绑定。再设置虚拟机网络:
% vim /etc/network/interfaces
将下列信息写入文件:
auto enpsh0(虚拟机网口名,ifconfig查看)
iface enpsh0 inet static
address 192.168.56.99
netmask 255.255.255.0
gateway 192.168.56.1
nameserver 8.8.8.8
3、重启虚拟机就可以发现主机和虚拟机可以相互ping通了,但是虚拟机不能ping通外网,还需 要最后一步,设置主机共享网络,在主机中安装firestarter并在设置中选择 Enable Network connection sharing,这样虚拟机就是一个连接主机的独立电脑了。
  • 设置虚拟机的root用户:
# sudo gedit /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf
在弹出的编辑框里输入:greeter-show-manual-login=true 保存关闭
回到终端输入:# sudo passwd root设置root用户密码关机重启即可。
  • 设置虚拟机远程登录:
#apt-get update
#apt-get install openssh-server
确认sshserver是否启动:
#ps -e |grep ssh
如果看到sshd那说明ssh-server已经启动,否则输入:sudo /etc/init.d/ssh start
#vim /etc/ssh/sshd_config
将PermitRootLogin选项改为PermitRootLogin yes
这时在主机的终端中可以远程登录虚拟机:ssh root@192.168.56.99
进入后输入#ifconfig可以查看是虚拟机的网络配置,输入#exit退出远程登录回到主机终端。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值