Linux虚拟机中的IP与宿主机IP不一样,但是能上网能ping通宿主机IP,但是我改成与宿主机一个网段就不行了

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux虚拟机中的IP与宿主机IP不一样,但是能上网能ping通宿主机IP,但是我改成与宿主机一个网段就不行了相关的知识,希望对你有一定的参考价值。

我用的宿主机环境是win7旗舰版32位linux系统版本是centos 5.6 虚拟机软件是VMware 9.0 默认安装的时候网络连接选择的是bridged能上网 能ping通宿主机 但是我想固定IP(能上网时虚拟机IP192.168.32.20宿主机192.168.1.112),我修改虚拟机IP成192.168.1.120后就不能ping通宿主机了。我想问的是 :如何固定IP 而且能ping通与宿主机通一个路由中的所有PC而且 每台PC都能远程操作我的虚拟机,就这点分了求帮忙

问题

1,虚拟机的IP地址网段是不能随便设的,要跟据你选择的网卡类型设置。
2,跟据你的描述,推段,的虚拟机并没有设置成bridged,很可能是设置成了nat
解决方案

1,将你的虚拟机的网卡删除再重新添加,添加时注意要选择可以bridged网络接口。
2,先通过动态IP取得方法获取IP地址(如果是真正的bridged自动取得的IP应该跟你的主机是同一段) 将信息记录之后,再将IP设成同一网段的固定IP。
3,将虚拟机的防火墙关闭或者把需要的端口开放,这样别的PC才可以接你的虚拟机。
参考技术A

使用host-only方式可以

http://www.cnblogs.com/bignjl/articles/2013058.html

上面的基本上可以解决

 

说一下我是怎么设置的

我的本地连接对VMnet1虚拟网卡共享,使之能共享上网,然后VMnet1虚拟网卡的ip设置为固定IP

192.168.137.1,之后虚拟机的IP设置为与VMnet1的IP在同一网段,如192.168.137.2

子网掩码 255.255.255.0 网关 192.168.137.1 , DNS 与你的宿主机的DNS相同

具体的看截图

 

我的真实设置

一下为ping  百度的截图

追问

兄弟我不光是需要宿主机能访问,局域网其他PC也能访问啊

追答

局域网其他PC能访问的话 必须要把你虚拟机IP设置为与宿主机IP在同一网段 这样的话 桥接就可以的 桥接会直接为虚拟机分配一个与宿主机在相同网段的IP

追问

 

宿主机是自动获取IP的,需要怎么设置

追答

虚拟机设置桥接就会自动为虚拟机分配一个与宿主主机同网段的IP的
当然 你设置为手动设置为与宿主主机同网段的IP可能会与局域网中其他电脑IP冲突的

本回答被提问者采纳
参考技术B 正常来说你选择桥接(也就是bridged方式)的话,应该是可以ping通的。我估计是你虚拟机的网络服务器没起来。一般情况虚拟机转桥接会导致你的网卡MAC地址和你虚拟机提供MAC地址不匹配导致报错。导致虚拟机的网络服务没起来。估计你service network restart应该会报错。需要自己修改一下配置文件。按照报错查查百度吧。 参考技术C 你先百度下虚拟机的三种网络形式

如果你想虚拟主机和你电脑在同一个段 就使用bridged
随便改ip是行不通的 你选择哪种的时候虚拟机就调用相应的模块 说白设置了默认的路由条目
乱改不符合路由肯定就ping不通等网络问题了

而且你获取192.168.32.20肯定是NAT模式

SecureCRT如何与Linux虚拟机进行关联

  1. 首先在宿主机上确认虚拟网卡是否正确工作,并查看其IP地址,如本例中,宿主机的虚拟网卡VMnet8的IP地址为:192.168.121.1/24。

    VMnet8是VMware用于NAT连接的虚拟网卡。

    技术分享
  2.  

    打开虚拟机软件VMWare8,启动虚拟机中的Linux,这里以RHEL6.3为例。

    使用root用户名和密码登录到系统。

    技术分享
  3.  

    使用ifconfig命令,查看Linux的IP地址。如果显示的eth0的地址和宿主机IP地址在同一个网段,那么一般可以通信了(如图1),如果不在同一个网段,可以手工进行配置。

    使用命令ifconfig eth0 192.168.121.22

    可以简单配置eth0的IP地址,也可以对配置文件进行编辑来详细配置,执行命令:vi /etc/sysconfig/network-scripts/ifcfg-eth0

    把相关内容修改同下图。(vi的使用可参考其它教程)

    技术分享
  4.  

    如果修改了配置文件,需要重启网络服务,使用以下命令:

    service network restart

    之后,使用ifconfig命令,查看IP地址是否正确,并使用Ping命令查看能否正常连接到宿主机:

    ping 192.168.121.2

    也可以试试能不能Ping通www.baidu.com这样的域名。

    如果能Ping通IP地址,不能Ping通域名,说明DNS没有配置,可以使用步骤5方法进行配置。

    技术分享
  5.  

    【DNS配置】

    执行命令:vi /etc/resolv.conf, 增加两行:

    nameserver 8.8.8.8

    nameserver 221.5.88.88

    如图。

    至此,Linux已经能正常连接到宿主机了。

    技术分享
  6.  

    打开SecureCRT,点击“新建连接”,在“快速连接”对话框中,输入主机名:192.168.121.22(即Linux的IP地址),用户名:root,之后点击“连接”按钮。

    技术分享
  7.  

    在弹出的密码输入框中输入密码。

    如果是自己常用的电脑,可以选择“保存密码”,如果是公用电脑,不要选中,之后点击“确定”开始登录。

    技术分享
  8.  

    这样,SecureCRT便登录到Linux中了,可以执行相关命令了。

    技术分享
  9.  

    使用SecureCRT的好处有:

    (1)远程登录、操作服务器;

    (2)窗口可以随意缩放;

    (3)可以解决中文乱码问题(如图设置编码为UTF-8)。

    技术分享
    END

注意事项

 
  • 虚拟网卡VMnet8的IP地址最好“自动获得”,但需要保存VMware的DHCP服务正确工作;
  • 在SecureCRT里,一般不要执行关机命令;
  • 在SecureCRT里配置服务器的IP地址、防火墙或SSH时,一定要确认正确再操作:不要把自己踢出。

该文章来自百度经验。

以上是关于Linux虚拟机中的IP与宿主机IP不一样,但是能上网能ping通宿主机IP,但是我改成与宿主机一个网段就不行了的主要内容,如果未能解决你的问题,请参考以下文章

虚拟机中的Linux的IP配置

虚拟机中的linux如何上网

如何使用SecureCRT连接虚拟机中的Linux

安装在VMware虚拟机中的Linux怎么上网,主机是用代理上网的。

如何设置虚拟机中的linux系统的静态IP,才可以上网

用scp将主机中的文件复制到虚拟机中的客户机中