家里的无线路由已经用了接近10年,加上随着设备的日渐增多,每次访问Google都要翻墙实在是一件麻烦的事情,于是动了自己写个DD-WRT的念头路由器。刚好公司有个TP-LINK的TL-WRD3310旧路由,刚好利用周五下午无心工作的时间做做试验。

上网找了一下,没能找到WRD3310的rom(严重鄙视)。继续Google,得知WRD3310在国外的对应型号是WRD3600,在DD-WRT官网可以找到WRD3600的rom,所以打着用这个rom刷到WRD3310的念头。翻墙下载了最新的Beta rom,连上WRD3310,选择刚下载的rom升级,结果报了一个“上传文件版本与机型不符”的错误,升级自动退出。

上传文件的版本与机型不符

一时卡壳了,但如果这样就认输不弄了,怎么能称爱折腾呢?重新上TP-Link的中国官网,下载了官方固件,用WinHEX打开固件文件,与DD-WRT的固件比较,终于找出通过修改固件写入的办法。

首先,把DD-WRT固件文件开头Offset=0x00000040处把机型从3600改为3100.

3

 

WRD3310

再把Offset=0x0000004C开始的16个字节暂时改为DC D7 3A A5 C3 95 98 FB DD F9 E7 F4 0E AE 47 38,然后保存。

MD5

用Hash计算出修改后固件文件的MD5,并复制下来。

Hash

再次用WinHex打开修改后的固件文件,用上面算出来的MD5替换掉刚才修改过的从Offset=0x0000004C开始的16个字节并保存。

更新MD5

再次通过网页连接WRD3310,用修改后的固件升级,这次顺利升级成功。

Update

升级成功后第一次登录设置路由器的用户名与密码,可以玩DD-WRT的各项设置了,把Shadowshocks写入,就可以实现自动翻墙功能了。同时,设备型号也变成了WRD3600了。

DD-WRT

 

[highlight dark=”no”]PS: 别说我没提醒你,这个方法适用于所有型号的无线路由写入固件:)[/highlight]

最近迷上了基于MEAN的开发,加上寒假在给邱小姐做HTML+CSS+JS的培训,小朋友强烈要求弄一台服务器,使她的学习成果可以在公网上展示给小伙伴们看。想到恰好在Vultr上有一台空余的服务器,于是趁春节前的空闲部署了CentOS并搭建一台测试的Web服务器。不想花太多时间教小朋友后端编程语言,所以打了JavaScript的主意,准备前后端处理都用JS搞掂,所以决定用Express+NodeJS来做Web服务器。

在Vultr上安装NodeJS和Express异常简单,基本上用Yum管理器就可以傻瓜式安装完。

1.下载最新版的Node.js

切换到临时目录,用curl从Joylent直接下载最新版本的Node.js.

[highlight dark="no"] cd /tmp 
curl -sL https://rpm.nodesource.com/setup | bash -[/highlight]

如下图所示:

Download latest Node.js

2. 安装Node.js

按照提示用yum安装Node.js.

[highlight dark=”no”]yum install -y nodejs[/highlight]

Install Node.js

3.安装NPM包管理工具(可选)

如果你以后想安装Node的addon包,建议安装NPM包管理工具。运行命令:

[highlight dark="no"]yum install gcc-c++ openssl-devel make[/highlight]

Install build toolsInstall build tools
4.更新NPM工具(可选)
如果运行NPM时提示NPM版本低,可以选择更新NPM,按提示运行命令:

[highlight dark="no"]npm -g install npm@latest-2[/highlight]

Update NPM tool
5.安装Express

用NPM从仓库中安装Express
[highlight dark="no"]npm install -g express-generator[/highlight]

Install Express
6.创建运行服务的非特权用户(建设)

[highlight dark="no"] useradd 用户名 
passwd 用户名[/highlight]

创建后登出系统并用新建的用户名重新登录。

7.创建Express项目
[highlight dark="no"] express expressproject 
cd expressproject 
npm install[/highlight]

Create Express Project
8.运行Express

运行Express,启动服务。

[highlight dark="no"]DEBUG=expressproject:* npm start[/highlight]

如果一切正常,会出现以下提示

[highlight dark=”no”]

> [email protected] start /home/用户名/expressproject

> node ./bin/www

[/highlight]

 

Start Express

至此,你可用[highlight dark="no"]http://IP:3000[/highlight]访问到你的Web服务了,Node.js+Express的环境搭建完成了。

Run Express