您的位置:首页 > 运维架构 > Shell

解决(虚拟机中ubuntu联不上网、xshell远程连接报错)的问题

2019-07-15 15:30 281 查看

简单介绍三种ubuntu中网络模式:

1、linux的桥接模式

  在桥接模式下,虚拟机和主机相当于两台独立的机器,但是需要我们给虚拟机配置独立的ip地址、默认网关、子网掩码以及dns,而且IP地址要和主机在同一个网段内。 
  这种配置,可以让虚拟机在局域网中和一台单独的机器一样,在其他机器中可以访问这个虚拟机

       缺点:电脑开不了共享热点。

2、linux的NAT模式

  NAT是最简单的一种联网方式,这种模式下,虚拟机借助主机联网,可以在主机内访问虚拟机,但是局域网内其他机器访问不到虚拟机。这种模式联网最方便,只要主机联网状态,可以在虚拟机内很便捷的联网。

3、linux的仅主机模式

  仅主机模式将虚拟网络和真实网络分开,局域网内的虚拟机可以访问虚拟机,虚拟机的主机也可以访问虚拟机,但是局域网内的其他主机不可以访问这个虚拟机。相当于虚拟网络和真实网络是两个局域网,但是虚拟机和自己的主机用双绞线连接。
 

 

推荐使用NAT网络连接:

第一步:设置NAT联网方式

 

以上步骤,可以通过ping www.biadu.com检测上网,下图即认为可以上网(ctrl + c 结束连接)   

 

 

如果,想通过xshell连接虚拟中的ubuntu,可以按照第二步 进行设置

第二步:打开虚拟机,设置静态ip

打开虚拟网络编辑器

查看DHCP,查看起始IP地址、结束IP地址,这个范围内是你可以选择的IP

点击NAT,查看自己的网关

【ubuntu 12.04】 vmware NAT模式

打开  /etc/network/interfaces 文件,该文件在开始时,只有以下内容

auto lo
iface lo inet loopback

然后直接在文件的后面增加设置,修改后的内容变为

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 你选择的ip 例如:192.168.112.225
netmask 255.255.255.0
gateway 你的网关IP  例如:192.168.112.2
dns-nameservers 8.8.8.8

eth0 这个参数,应该和自己的机电脑fconfig 输出相符。

 

【ubuntu 14.04】

在ubuntu 14.04 中,前面的设置和ubuntu 12.04 相同,但是还需要再修改一个文件 /etc/NetworkManager/NetworkManager.conf,将里面的 managed 参数设置为true,然后重启机器即可。

 

【ubuntu 16.04】

首先需要修改 /etc/network/interfaces

增加

auto ens33
iface ens33 inet static
address 你选择的IP
netmask 255.255.255.0
gateway 你的网关IP
dns-nameservers 8.8.8.8

(注意,ubuntu 16之后的网卡名字不再是 eth0 之类,而是其他名字,例如作者这里就是 ens33,还有 dns-server 这一行一定要写,否则会设置失败)

 

修改/etc/NetworkManager/NetworkManager.conf 文件,将 managed 设置为 true

 

设置 /etc/resolvconf/resolv.conf.d/base,增加

nameserver 8.8.8.8

因为机器在重启后,真正读取dns 的配置是在 /etc/resolv.conf,但是 /etc/resolv.conf 的数据来源于 /etc/resolvconf/resolv.conf.d/base

 

用户可以通过以下命令查看 /etc/resolvconf/resolv.conf.d/base 的值是否被刷到 /etc/resolv.conf 上

resolvconf -u

重启网络服务

/etc/init.d/networking restart

 

【ubuntu 18.04】

打开 /etc/netplan/01-network-manager-all.yaml 配置文件,原文内容如下

# Let NetworkManager manage all devices on this system
network:
version: 2
renderer: NetworkManager

 

修改后的配置

# Let NetworkManager manage all devices on this system
network:
version: 2
renderer: NetworkManager

ethernets:
ens33:   #配置的网卡名称
dhcp4: no    #dhcp4关闭
dhcp6: no    #dhcp6关闭
addresses: [你选择的IP/24]   #设置本机IP及掩码
gateway4: 你的网关IP   #设置网关
nameservers:
addresses: [114.114.114.114, 8.8.8.8]   #设置DNS

 

执行以下命令使得配置生效,然后IP 地址就变成了静态,并且ping 互联网的地址就正常了

netplan apply

 如下图,成功设置静态ip,可以通过Xshell愉快连接了

另外,如果出现频繁断网,可以通过如下解决:

       原因:ppp的很多选项都是默认的,其中lcp-echo-failure次数被设为4,而lcp-echo-interval设为30秒。也就是说,如果 120秒钟之内,ADSL服务器没有给回echo-reply信号,UBuntu便会认为网络已经出了问题,就会断开网络。

参考链接2:延长时间

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: