karottc

VMware中的linux能上网不能ping通的可能偏方一

 

1.现象描述

         VMware中装的ubuntu,host机是win7,VMware中用的NAT模式,Host机可以上网(用浏览器可以打开网页),ubuntu也能上网(同样也是通过浏览器可以看网页),并且host机和ubuntu之间可以相互Ping通,在win7下也能ping到外网,但是现在问题来了:在Ubuntu下不能ping到外网。

         上面的操作过程为:1.查看win7的IP,结果如下:

C:\Users\Administrator>ipconfig



Windows IP Configuration



Ethernet adapter Local Area Connection:



   Connection-specific DNS Suffix  . :

   Link-local IPv6 Address . . . . . : fe80::e9fe:1c1:5174:6585%11

   IPv4 Address. . . . . . . . . . . : 192.168.1.25

   Subnet Mask . . . . . . . . . . . : 255.255.255.0

   Default Gateway . . . . . . . . . : 192.168.1.1



Ethernet adapter VMware Network Adapter VMnet8:



   Connection-specific DNS Suffix  . :

   Link-local IPv6 Address . . . . . : fe80::650a:ea63:6f6b:31fd%14

   IPv4 Address. . . . . . . . . . . : 192.168.16.1

   Subnet Mask . . . . . . . . . . . : 255.255.255.0

   Default Gateway . . . . . . . . . :

2.查看Ubuntu的IP,结果如下:

cy@cy:~$ ifconfig

eth0      Link encap:以太网  硬件地址 00:0c:29:9d:3e:18 

          inet 地址:192.168.16.151  广播:192.168.16.255  掩码:255.255.255.0

          inet6 地址: fe80::20c:29ff:fe9d:3e18/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  跃点数:1

          接收数据包:5589 错误:0 丢弃:0 过载:0 帧数:0

          发送数据包:6624 错误:0 丢弃:0 过载:0 载波:0

          碰撞:0 发送队列长度:1000

          接收字节:1015270 (1.0 MB)  发送字节:563164 (563.1 KB)

          中断:19 基本地址:0x2024

3.确保win7可以ping到外网,结果如下:

C:\Users\Administrator>ping www.baidu.com



Pinging www.a.shifen.com [115.239.210.27] with 32 bytes of data:

Reply from 115.239.210.27: bytes=32 time=53ms TTL=55

Reply from 115.239.210.27: bytes=32 time=48ms TTL=55

Reply from 115.239.210.27: bytes=32 time=47ms TTL=55

Reply from 115.239.210.27: bytes=32 time=48ms TTL=55



Ping statistics for 115.239.210.27:

    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

    Minimum = 47ms, Maximum = 53ms, Average = 49ms

4.从win7 到 Ubuntu的测试:

C:\Users\Administrator>ping 192.168.16.151



Pinging 192.168.16.151 with 32 bytes of data:

Reply from 192.168.16.151: bytes=32 time<1ms TTL=64

Reply from 192.168.16.151: bytes=32 time<1ms TTL=64

Reply from 192.168.16.151: bytes=32 time<1ms TTL=64

Reply from 192.168.16.151: bytes=32 time<1ms TTL=64



Ping statistics for 192.168.16.151:

    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

    Minimum = 0ms, Maximum = 0ms, Average = 0ms

5.从 Ubuntu到win7的测试:

cy@cy:~$ ping 192.168.16.1

PING 192.168.16.1 (192.168.16.1) 56(84) bytes of data.

64 bytes from 192.168.16.1: icmp_req=1 ttl=64 time=1.16 ms

64 bytes from 192.168.16.1: icmp_req=2 ttl=64 time=0.469 ms

64 bytes from 192.168.16.1: icmp_req=3 ttl=64 time=0.495 ms

^C

--- 192.168.16.1 ping statistics ---

3 packets transmitted, 3 received, 0% packet loss, time 2005ms

rtt min/avg/max/mdev = 0.469/0.711/1.169/0.324 ms



cy@cy:~$ ping 192.168.1.25

PING 192.168.1.25 (192.168.1.25) 56(84) bytes of data.

64 bytes from 192.168.1.25: icmp_req=1 ttl=128 time=1.31 ms

64 bytes from 192.168.1.25: icmp_req=2 ttl=128 time=1.36 ms

64 bytes from 192.168.1.25: icmp_req=3 ttl=128 time=1.19 ms

^C

--- 192.168.1.25 ping statistics ---

3 packets transmitted, 3 received, 0% packet loss, time 2005ms

rtt min/avg/max/mdev = 1.195/1.290/1.363/0.081 ms

6.结果,从Ubuntu不能ping 到外网去:

cy@cy:~$ ping www.baidu.com

PING www.a.shifen.com (115.239.210.26) 56(84) bytes of data.

^C

--- www.a.shifen.com ping statistics ---

23 packets transmitted, 0 received, 100% packet loss, time 22075ms

 

2.解决办法

         这个问题,然后google之,出来的结果基本都是讲解VMware里面上网问题,我这种能网上却ping不出去的没有人提,或许这种淡疼的问题别人不屑提,又或者大家看到能上网就OK,管它ping通不通的,没这个需求,结果是鄙人这个情况在网上未找到满意的答案,也为找到这种例子,根据网上的做法,看了一眼resolv.conf这个文件,如下:

cy@cy:~$ cat -n /etc/resolv.conf

     1  # Generated by NetworkManager

     2  domain localdomain

     3  search localdomain

     4  nameserver 192.168.16.2

cy@cy:~$

没有任何问题,故只能自己淡淡的思考和尝试。

         在摸索一阵之后发现了问题的所在,在与win7下本地网络的共享打开了,打开和关闭影响着VMware里面的Ubuntu上网问题,也影响着里面的ping同到外网问题,在Ubuntu不能ping同外网时,我的设置是这样的,如图

然后去掉共享,就能ping通到外网了,即在这种情况下

是用ping的结果为:

cy@cy:~$ ping www.baidu.com

PING www.a.shifen.com (115.239.210.26) 56(84) bytes of data.

64 bytes from 115.239.210.26: icmp_req=1 ttl=128 time=47.6 ms

64 bytes from 115.239.210.26: icmp_req=2 ttl=128 time=48.5 ms

64 bytes from 115.239.210.26: icmp_req=3 ttl=128 time=48.9 ms

^C64 bytes from 115.239.210.26: icmp_req=4 ttl=128 time=48.7 ms



--- www.a.shifen.com ping statistics ---

4 packets transmitted, 4 received, 0% packet loss, time 15313ms

rtt min/avg/max/mdev = 47.649/48.482/48.977/0.552 ms

cy@cy:~$

到此已解决了上面的问题!

3.背景

       在这里再来小小的补充一下产生这个需求的背景(即在可以上网的情况下,干嘛还要淡疼的非得用ping命令通了才罢休)。我想在VMware中的虚拟机中通过浏览器来上网的,这个需求应该非常之少,因为如果在VMware中用浏览器,还不如直接在Host机中用浏览器,这样软件运行的还更流畅一下,所以在VMware中一般只是作为一个网络是否连通的测试,既然测试网络连接,一般为了装的专业一点都会在shell下用命令来测试,当然说了这么多,这些都不是本文的需求目的,只是附带说一下而已。

         本文的需求产生于要使用nmap命令来扫描一些端口,windows下的命令基本不熟,所以选择linux下的这些网络命令来满足需求,而这些东西用浏览器是代替不了的,所以才有了需要通过命令也能通到外网的需要。这里多啰嗦两句,本文例子中的外网的测试站点用的www.baidu.com,我想应该大家都很熟悉了,这让我想到了前段时间网上的说法,在我们这个镇上,一半人用他是用来搜索,一半人用他来测试网络连接。后面有哥们儿闲谈的时候跟我说到,很多用来测试网络连接,说明它的运维做的好,做这个网站的运维的人应该很自豪了。最后附上一张用nmap扫描的图:

2013-03-24  14:37

 

secureCRT登录VMware进行开发

1.背景

        混迹IT的朋友应该没人对secureCRT这种工具陌生,应该有相当一部分公司的开发都是通过secuerCRT这种工具进行的,在公司的具体应用场景,我想看到这篇文字的人应该都知道,在这里就不解释了,也不是本文的重点。但对于鄙人这种学生党来说,知道它的就很少了,而且就我体验的大学教育中,我觉得secureCRT这个工具是很有需求的。PS:鄙人在学校待了三年也没用过secureCRT,第一次接触和使用是因为大三暑假厚颜无耻的去到了一个互联网公司实习,因为知道公司做开发都是在linux环境下的,所以在到公司之前一直以为配备的电脑都是Linux系统,但是去了之后才发现不是,还是用的windows,然后在windows上通过secureCRT登录到linux开发机而已;然后年后到了一家通信公司实习,又在次用到了它,这次不仅仅是登录linux了,而且用它通过串口调试设备,至此我突然感觉到secureCRT真是强大,可以称得上是神器也!

         下面说说对鄙人这样的学生,计算机相关专业的学生,大学中肯定会接触到linux,或因为教学、或因为自己的兴趣,或多或少都会在linux下写一些代码(如果没有,说明你们的学校有点霸道,都不给学生选择的权利),在linux下写代码,一般或者说常用的有两种方式:

Ø  装一个linux发行版,这种情况下估计大多数都是双系统了,这是估计很多用linux也就是写写代码,平时一般性活动(上网、聊天、游戏、看电影等等)都在另一个系统中完成。

Ø  在VMware中装一个linux发行版,在虚拟机中写写代码,比之上一种方式方便了很多。

这两种方式鄙人都用过并且正在用,我是ubuntu和win7双系统,同时又在win7中的VMware里装了一个linux,自己曾经偏执要抛弃windows的时候就一直在ubuntu上折腾,很多日常活动也在上面完成。当然,上面两种方式都各有优缺点,只能是看个人喜好了,用双系统时因为linux是基于物理硬件的,所以运行速度和各种操作都是很快的,这一点上,应该没人不喜欢自己的电脑跑得太快吧,但是需要比较频繁的切换系统,这个很是麻烦,到目前为止,linux下的软件都没有windows上的用的舒服(当然linux下的shell比windows下的命令行要高出N个等级,但是除此之外常用的东西就很少比得上了),比如Adobe的软件都是没有linux版的(这里只是针对PC系统,不要来说android之类的),只有windows和MAC版本,比如看书我常喜欢用的两个笔记软件onenote和evernote,不同的笔记用不同的东西,虽然evernote在linux有一个比较好的仿真版的,但是用起来感觉还是差了些,所以很多时候其实都是需要windows和linux同时用的,此时双系统就完全不占优势了,这是在windows下的虚拟机是一个好的选择,但是用VMware之类的虚拟机时,速度明显跟不上,有时还有些卡(有些电脑特别强悍的不再此范围),因为慢和卡所以用起来心里多少有些不舒坦,这个问题解决方式就是用secureCRT(或其他工具)来登录到VMware里的虚拟机进行开发,这是只需要运行VMware,然后在windows下面的secureCRT里面工作,就比较好的解决了上面的所有问题。

2. secureCRT登录VMware

 这一步首先是安装secureCRT和VMware两个软件,然后在VMware中装上自己喜欢的linux发行版,这里用Ubuntu为例。

  1. 检查linux机用没有安装SSH服务,通过命令$ ssh username@localhost 。一般来说都是没有安装的,所以会出现下面的信息:ssh: connect to host localhost port 22: Connection refused 。这时需要安装SSH服务,用命令:$ sudo apt-get install openssh-server ,然后再启动SSH服务:$ sudo /etc/init.d/ssh start
  2. 检查linux和windows是否连通,相互ping一下IP地址即可知道。
  3. 通过secureCRT登录到虚拟机,不会的话,secureCRT有设置向导,根据那个一步一步输入IP地址就OK。
  4. 接着就是个性化自己secureCRT设置了,然后就享受coding的乐趣吧!

最后附上鄙人的一张截图:

2013-03-16 19:20

期望的2013

这段时间有一些想法,看到了很多人努力,也看到了一个感觉很牛的人放下对技术执着,开始重新找工作了。(PS:说道对技术的执着我又想到了自己,当时我在北京实习时,天天写PHP的代码,觉得不是那么有劲,因为我想做C/C++方面的,所有后面回成都找工作时,根本就没投互联网相关的单位,因为我认为更互联网有关,你就有可能去做WEB相关的,所以我投简历时都是选那种嵌入式、通信类的,这样可以更底层,对于做C/C++的把握更大一些,这又何尝不是一种执着,或者说的不好听一点就是挑三拣四的,到现在出来在通信的公司实习了一段时间,和一些人聊到,再根据自己情况,现在的我也不会有那一份挑三拣四的心态,因为在行业之中干过,对很多东西都会有一些新的认识,所以现在就是努力做好当前的事,同时关注行业新动态!)。我从大三下,也就是2012年初开始认识到自己需要看很多书,但是却没有马上开始,2012年6月以前大三下学期还有些课程需要学习,同时也在找实习,大概是这些事,所以没心情看书了;6月以后先后在重庆的中软国际(学校安排的比较坑的实训基地)和北京百度(呆了差不多两个多月)实习,这样就到了10月中旬,后面就是开始正式找工作了,实习的时候对于一个22年都没有离开过四川省的人来说,要适应一个人在外漂的感觉需要时间来调整心态,没心情谈何看书,后面找工作时不知道结果的等待也是煎熬的心情,就这样拖了一年也没看书。

因此,真正开始看书却是从今天春节过后开始的,于是乎我假装文艺的注册了一个豆瓣帐号,主要用来读书的。在2月23号从成都来到深圳ARRIS实习,虽然这也是离开生活多年的地方,但是有以前外出的经验,所以这次明显好了很多,从容了很多,所以现在的我,依然有时间有心情安安静静的看看书,比如《身体和灵魂,总有一个要在路上》这本书就是我在每天上下班的地铁上看完的,虽然在家也看了1/3的样子。现在对自己时间的掌控度高了很多,所以有很多事要干,首要的就是读书。

今年主要有两件大事:

Ø  毕业

Ø  工作

从现在离毕业也只有3个月的时间,要做的事就是毕业设计;关于工作,毕业之后就得到现在实习的这家公司上班了,在工作上有太多东西要学,这也是我选择来实习的原因。

所以我期望的2013年应该这样过:

Ø  淡化微博,本来想写戒掉微博的,想想不太可能,因为毕竟还是有些情况下需要用到微博,当初开始用微博是因为一个初中同学叫我注册一个号然后可以变成她的粉丝,后面陆陆续续发了一点,再后来,我想的是可以自己写一个脚本来抓取发的微博做成一个人生简介的样子,所以用的就渐渐频繁了,再后来也就是最近想到,这样做有什么意思呢,标明时间、地点、状态和感受,无非就是炫耀而已,天天刷微博浪费大量时间,真正有用的东西最多10%而已,所以我决定把这些时间都用来看书,用来提高自己。

Ø  冷落QQ以前上QQ也一直隐身,本来用的也不多,只是还是习惯性登着Q而已,但是登着也是挺浪费时间的,因为就像网上说的,会不自觉的去刷新,等待着某个人,具体是谁,自己也不知道,否则就不是等待而是主动了。所以现在的决定是,一般情况下都不登Q,如果的记得的话,就每天登录一下,看看有没有什么消息,而且登Q的时候也不再隐身了,因为感觉没有必要。

Ø  多看书,一直认为看书才是提升自己的原动力,所以要多看书,不过从最近一个月的读书情况来看,我看的主要还是非技术书籍,这点需要注意,以为对于我现在的水平,对于即将毕业的我,至少今年应该以技术书籍为主,具体的书籍都会在豆瓣上标识出来。

上面虽然只说了微博和QQ,但这两个基本上是我的全部SNS东西了,我从来没用过人人,facebook因为地理位置的原因上的不多,做到上面这些,我期望的2013年应该是我静水深流的一年。

2013-03-10 18:52




Host by is-Programmer.com | Power by Chito 1.3.3 beta | © 2007 LinuxGem | Design by Matthew "Agent Spork" McGee