问题描述:

在OpenStack平台上的64位Windows7虚拟机,可以ping通百度,但是却无法打开百度网页。

于是,笔者又对其它网址进行的测试,发现淘宝、京东、携程部分网页可以打开,而新浪等等网页依然打不开,瞬间郁闷了。

按照百度网上的搜索结果进行了各种尝试,包括重启路由、重装virtio驱动、重置winsoc文件(CMD命令:netsh winsock reset)、重装TCP/IP协议等各种方法,均不见效。

然后看到网上有说旗舰版windows7系统中有这样的问题存在,于是笔者对同一个平台上的windows2008、windows10系统均进行了测试,问题是一样的,排除了版本的可能性。

但是对同一个云平台下的centos系统,其可以正常访问百度网页,于是锁定windows系统本身的网络设置,甚至还有怀疑过是virtio驱动的版本问题,但是经过实际测试后均一一排除。

偶然间在网上百度到MTU,于是抱着尝试的心态试一下:

(1)打开“网络连接”(控制面板\网络和Internet\网络连接)

(2)鼠标右键->“属性”

(3)选择“配置”项

(4)“高级”->“Init MTUSize”,将其值该小,以前是“1500”,笔者暂改为“1450”

(5)确认以上更改操作。

再尝试打开百度网页,成功了!!!

于是,笔者接下来认真地学习了一下MTU,并做以下记录:

MTU(Maxinum Transmission Unit),最大传输单元,是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位),这个参数通常与通信接口有关。

因为协议数据单元的包头和包尾的长度是固定的,MTU越大,则一个协议数据单元承载的有效数据就越长,通信效率也越高。MTU越大,传送相同的用户数据所需的数据包个数也越低。
MTU也不是越大越好,因为MTU越大, 传送一个数据包的延迟也越大;并且MTU越大,数据包中 bit位发生错误的概率也越大。
也就是说,MTU越大,通信效率越高而传输延迟增大,所以要权衡通信效率和传输延迟选择合适的MTU。
 
设置合适的MTU值可以解决“部分网站打不开”、“上网速度慢”等问题,并且可以适当提升上网速度。
因为如果本机的MTU比网关的MTU大,大的数据包就会被拆开来传送,这样会产生很多数据包碎片,增加丢包率,降低网络速度。
 
那么如何检测网关的MTU呢?
本机CMD命令行:ping -f -l 1500 192.168.1.1
其中,192.168.1.1是网关IP地址,1500是数据包长度
如果能ping通,表示数据包不需要被拆包,可以通过网关传输,如果出现“Packet needs to be fragmented but DF set.”,则表示数据包被拆包,需要降低数据包长度。
 
合理调整路由器和本机的MTU值,可以实现网速的最大化。

OpenStack平台上,windows云主机可以ping通百度但是无法打开网页,部分其它网页可以打开的更多相关文章

  1. Ceph与OpenStack整合(仅为云主机提供云盘功能)

    1. Ceph与OpenStack整合(仅为云主机提供云盘功能) 创建: linhaifeng,最新修改: 大约1分钟以前 ceph ceph osd pool create volumes 128 ...

  2. route 一个很奇怪的现象:我的主机能ping通同一网段的其它主机,并也能xshell 远程其它的主机,而其它的主机不能ping通我的ip,也不能远程我和主机

    一个很奇怪的现象:我的主机能ping通同一网段的其它主机,并也能xshell 远程其它的主机,而其它的主机不能ping通我的ip,也不能远程我和主机. [root@NB Desktop]# route ...

  3. 虚拟机ping不通主机,但是主机可以ping通虚拟机(转载)

    我在Windows7系统安装了虚拟机,通过虚拟机安装了Ubuntu13.04,我设置的主机与虚拟机的连接方式是桥接,安装好后,发现虚拟机ping不通主机,但是主机可以ping通虚拟机. 我的操作是:关 ...

  4. 防火墙设置:虚拟机ping不通主机,但是主机可以ping通虚拟机(转载)

    我在Windows7系统安装了虚拟机,通过虚拟机安装了Ubuntu13.04,我设置的主机与虚拟机的连接方式是桥接,安装好后,发现虚拟机ping不通主机,但是主机可以ping通虚拟机. 我的操作是:关 ...

  5. OpenStack平台上,linux云主机可以使用xshell连接,但是无法xftp连接

    笔者在OpenStack云平台上创建了CentOS6.6的云主机,用了一段时间后,发现xshell可以连接,但是xftp却连接不上. 于是进行伟大的百度操作,检查网络设置.ssh服务设置等,均正常,否 ...

  6. 【openstack N版】——云主机调整大小\冷迁移

    一.先决条件 云主机冷迁移,即:将一台云主机从一个计算节点上,迁移到另外一个计算节点上.因为环境原因,所以我们需要准备两个计算节点. 1.1准备环境 在控制节点上,安装一个计算节点 #在控制节点安装n ...

  7. openstack 主机无法ping通instance,无法ssh到instance

    https://docs.openstack.org/zh_CN/user-guide/cli-nova-configure-access-security-for-instances.html 好不 ...

  8. VMware14 安装CentOS7 实现宿主机ping通虚拟机、虚拟机ping通宿主机、虚拟机能上网且能ping通百度

    本文旨在通过通过虚拟机VMware14来安装CentOS7 系统,并配置固定IP来实现在Windows系统中使用Linux环境. 本文目录: 0.本机环境 1.VMware14 初始化 1.1.安装V ...

  9. 虚拟机Linux(centos)系统能ping通主机,主机无法ping通Linux解决方案

    本文引用:https://blog.csdn.net/clean_water/article/details/53023308 三个步骤: 第一步:虚拟机网络连接方式选择Nat 第二步.关闭liunx ...

随机推荐

  1. 为chrome设置代理

    1:打开google>setting>proxy  ,点击局域网设置. 2: 设置代理,当使用代理访问不了公司的网络时,需要将代理勾掉,将上面的公司用的网选上.

  2. Java 基础 面向对象之关键字内部类代码块修饰符

    final final概念 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承,或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子类继承了这些特殊类之后 ...

  3. MySQL 基础 DDL和DML

    DDL 数据库定义语句 创建数据库 create table if exits 数据库.表名( field1 数据类型 约束类型 commit 字段注释, field2 数据类型 约束类型 commi ...

  4. 【Java】-NO.14.Java.4.Java.1.001-【Java JUnit 5 】-

    1.0.0 Summary Tittle:[Java]-NO.14.Java.4.Java.1.001-[Java JUnit 5 ]- Style:Java Series:JUnit Since:2 ...

  5. python 调用阿里云服务器api创建服务器

    首先安装阿里云SDK pip install aliyun-python-sdk-core pip install aliyun-python-sdk-ecs 可以配合jenkins传递参数 #!/u ...

  6. 背景图宽高100%无法无法显示的问题【body设置relative,当前元素absolute】

    以下1,2两个关键元素 body{   width:100%;   height:100%;   position:relative; //1 } .login-form { width: 100%; ...

  7. Linux配置eclipse实践

    有几年没有在Linux下用eclipse开发了,几年前是在CentOS 7下用eclipse开发的,好像用的还是较新的版本.最近有个项目要求在centos 下卡发,装上eclipse-cdt后,建立项 ...

  8. 字符串ASCII码排序

    在对接第三方支付渠道的时候,第三方会要求参数按照ASCII码从小到大排序. 如下是渠道方有关生成签名规则的java代码示例: //初始化0010merkey.private文件: String mer ...

  9. HP-UX平台Oracle启动实例遭遇:ORA-27154,ORA-27300,ORA-27301,ORA-27302

    环境:HP-UX 11.31 + Oracle 11.2.0.4 现象:在hpux安装Oracle,按业务需求配置参数后,无法启动实例. 报错如下: ORA-27154:post/wait creat ...

  10. shell基础:输入输出重定向

    输出重定向将命令输出存入到文件,类似日志.便于查看.2和>>间没空格.但这种方法没用 ,命令执行时并不知道对错. /dev/null下的null就是一个垃圾箱,脚本中的一些命令并不需要保存 ...