借助无线路由器+2台笔记本+Windows桥接功能,成功绕过了微信聊天记录迁移的BUG
最近入了台iphone se,在迁移微信聊天记录的时候,遇到个BUG。它的迁移流程是这样的:需要将两台手机连接到同一个WIFI上面,然后新手机扫旧手机上面的二维码,来完成导入。中途遇到的问题是:

此时我两台手机连接的都是ssid为zzz的wifi,经过连接不同的ssid发现,它提示的这个wifi(这里为"{{{")跟实际的wifi(这里为"zzz"),每个字符的ascii码刚好大1,无论我连接了什么网络,SSID是纯字母,带中文,带空格,手机wifi热点,蓝牙,都是此情况,提示“两个设备未连接到同一个Wi-Fi”,基本可以断定,我遇到微信的BUG了,检查了下软件版本,均是最新版本,于是琢磨着怎么绕过这个BUG。
最开始是做了个测试,创建了一个名为{{{的wifi,新手机连接上去,执行迁移,不再提示“两个设备未连接到同一个Wi-Fi”,而是报错:

由此可见,需要做的事情是绕过ssid的同名判定,并且要让两台手机互通(约等于在一个内网)。
一开始想到的是保存那个二维码,假如ssid信息是保存在二维码中的话,那么可以先把旧手机连接到yyy(根据BUG,它将会要求新手机连接zzz),然后把二维码截图,再把旧手机连接到zzz,再用新手机扫描截图,结果还是提示我连接{{{,所以ssid的信息并不是保存在二维码中。
既然如此,那么得想办法弄两个wifi,而且它们还得在一个内网。首先想到的是用路由器wifi+笔记本的虚拟wifi,开启虚拟wifi的共享上网功能,但发现,这种方式只能单方向ping通(虚拟wifi网络到路由器wifi网络),类似于内网IP跟外网独立IP,应该是windows共享上网的特性吧,用手机在两个方向都测试了,均行不通,估计微信在两个方向都要建立连接吧。
这时想起来windows有个网络桥接的功能,于是
1、用笔记本A创建虚拟wifi,ssid设置为{{{,IP跟路由器网络设置为同一网段;
2、笔记本B用网线连接到路由器网络;
3、笔记本B的无线网卡连接到虚拟wifi,IP跟路由器网络设置为同一网段;
4、然后在笔记本B上面将这两个网络连接桥接起来(在【网络连接】设置面板,将两个网络连接选中,并点击右键,选择【桥接】);
于是,虚拟wifi跟路由器wifi连成了同一个网络了!
接着:
1、将旧手机连接路由器wifi;
2、新手机连接虚拟wifi,IP跟路由器网络设置为同一网段,网关设置为路由器IP,设置好DNS;
再点迁移,成功!

ps:我本不是搞网络这一块的,虽然没什么牛B的技术,但寻找解决办法的这个过程,有点hack的味道,故记录下来。如果你有更好的办法,也不防指教
借助无线路由器+2台笔记本+Windows桥接功能,成功绕过了微信聊天记录迁移的BUG的更多相关文章
- Windows Azure功能更新:弹性伸缩(autoscale)、监控报警、移动服务及网站服务商用、新的虚拟机镜像
Windows Azure功能又更新了.此次更新包括1项重要更新和两个功能更新: 重要更新:云服务.网站支持按策略进行弹性伸缩 功能更新:两个预览版的服务(网站和移动)进入商用,虚拟机服务支持SQL ...
- 两台笔记本搭建openvswitch网络
环境说明: 笔记本A.B均运行Ubuntu 14.04,两台笔记本通过无线网卡上网,用一根网线连接两台笔记本的有线网卡. 网络拓扑: 其中,vm1 vm2 S1位于笔记本A,vm3 vm4 S2位于笔 ...
- 局域网两台笔记本如何使用svn
前几天我要和朋友一起开发一个网站,但是都是两台笔记本,连局域网搞的很麻烦,后来就用了git,今天突然想到要用svn,就在网上找了这个办法,结果一试便可以了,很开心 很感谢楼主,下面是我做的步骤绝对给力 ...
- 02 - Unit04:笔记本加载功能
@ExceptionHandler 在控制器中统一处理异常. 为了重用异常处理方法,可以将处理方法抽象到父类中,子类共享异常处理方法. 语法: @ExceptionHandler(Exception. ...
- Windows Azure功能更新:SQL Server AlwaysOn和Notification Hub 正式商用
一周以前Windows Azure发布了新的更新内容,主要的更新有3项: 虚拟机上的SQL Server支持AlwaysOn可用性组了 Notification Hub商用 自动缩放支持时间策略 这里 ...
- Windows Azure功能更新:Oracle软件正式登陆Azure了
今天,Windows Azure国际版发布了新的功能:全面支持Oracle软件,包括Oracle Linux, Oracle 12c数据库,Weblogic 11g和12c,Oracle JDK 6和 ...
- Windows Azure功能更新: SDK 2.1发布,Traffic Manager集成
最近,Windows Azure又进行了更新 Windows Azure SDK 2.0发布没多久,2.1版(for .NET)就在今天发布了.2.1版本在管理功能上进行了重大改进,包括Visual ...
- R+OCR︱借助tesseract包实现图片文本提取功能
2016年11月,Jeroen Ooms在CRAN发布了tesseract包,实现了R语言对简单图片的文本提取.分析功能. 利用开源OCR引擎进行图片处理,目前可以识别超过100种语言,R语言可以借助 ...
- TP-LINK路由器桥接功能实现(WDS)
弄过好几次路由器的桥接了,但每次都忘记了,要重新找资料.在此记录一下,方便以后使用. 准备工作: 1.设置本地连接/无线网络连接(取决于用哪个配置路由器):IP-192.168.1.100 掩码-25 ...
随机推荐
- python模块之configparser
configparser用于处理特定格式的文件,其本质上是利用open来操作文件. # 注释1 ; 注释2 [section1] # 节点 k1 = v1 # 值 k2:v2 # 值 [section ...
- IE11错误:Exception in window.onload: An error has occuredJSPlugin.3005 解决方案
问题:新安装的IE11无法使用F12开发者工具,DOC资源管理器提示错误“Exception in window.onload: An error has occuredJSPlugin.3005”. ...
- 快速卸载VS2015的办法
1.以管理员身份运行CMD: 2.在CMD里输入F:\>vs_enterprise.exe /uninstall /force
- Js获取图片原始宽高
如果我们页面看到的图片都是缩略图,那就需要做个图片点击放大效果,那么怎样获取图片的原始宽高呢?方法如下: //获取图片原始宽度 function getNaturalWidthAndHeight(im ...
- JAVA学习笔记(33-53)
33:java中的多维数组,以二位为例: 创建方法:int[][] a = new int[2][3]; 建立一个5*5的数组. 或者下面的建立方法也可以: int[][] c = { {1, 2, ...
- CocoaPods安装及使用《转》
http://www.cnblogs.com/eagley/p/5407721.html
- springboot一个service内组件的加载顺序
先加载自身构造器,所以在构造器中初始化时若使用需要注入的(即@Autowired注解的)组件相关的方法,则会报null: 然后加载注入的组件即@Autowired 最后加载@PostConstruct ...
- rabbitMQ+php
RabbitMQ与PHP(一) 项目中使用RabbitMQ作为队列处理用户消息通知,消息由前端PHP代码产生,处理消息使用Python,这就导致代码一致性问题,调整消息定义时需要PHP和Python都 ...
- c语言warning总结
1.function declaration isn’t a prototype括号中无参数,也要加void 2.array subscript is above array bounds数组下标大于 ...
- openvpn配置教程
openvpn配置教程 本文是为解决本地服器能从外网访问web页,从新改写(临摹) 烂泥:ubuntu 14.04搭建OpenVPN服务器这篇文章 腾讯云为服务器,本地服务器为客户端 一.服务器安装o ...