Amazon EC2设置DNS隧道记录

最近上门compiler的课,给了10$的AWS coupon,落后的发现EC2的t1.micro居然是可以免费用一年的,用探针试了下CPU还凑合2.66G双核,就是内存太小了,GOME什么的应该是没指望了。架完VPN顺手建了个DNS隧道,速度仅够应急看个邮件什么的,希望公共wifi以后都别关53端口。

步骤如下:

1. 使用cloudping根据速度自行确定Instance的Region,然后新建一个Instance,security group里开启UDP 53端口。AMI我选择的是Ubuntu 12.04 LTS,用起来比较顺手一点点。

2. 在EC2的Instance上安装Iodine的服务器端,比较简单

sudo apt-get update
sudo apt-get install iodine
sudo sed -i '$d' /etc/apt/sources.list

3. 设置DNS记录
建一条A记录,指向EC2主机的IP,例如
alias.yourdomain.com 54.251.8.8
再建一条NS记录,把它指向刚刚建立的A记录,例如
iodine.yourdomain.com alias.yourdomain.com

4. SSH到EC2主机,运行
sudo iodined -c 172.16.0.1 -P yourpassword iodine.yourdomain.com
国内的几乎所有介绍都让加上-f这个参数,这个参数的作用是让其前台运行,但问题是在关闭SSH terminal时,服务器端的iodine也就随之关闭了。

5. 客户端安装Openvpn的tap driver,这个实在很简单。。。

openvpn

6. 查询DNS记录生效后,客户端使用相同的iodine版本连接服务器
iodine -f -P yourpassword 54.251.8.8 iodine.floydcui.com
这时Openvpn的TAP-Adapter状态会变为已连接,当状态出现“Connection setup complete, transmitting data”时,Ping 172.16.0.1如果成功,连接就算完成了。

这时可以用SSH登入172.16.0.1,打开本地的Socks Forwarding,利用这个端口作为代理上网。

 

Another AD

等了好久,总算来了,Computer Engineering。

Anyway, 不管费用高低,还是挺开心的。

总算有地方去了

最难挨的日子似乎快过去了,好歹来了个AD,9K fellowship/year。

去年很想去NYC,location很喜欢,当时觉得6K就可以去了。可是当真的AD有了的时候,又开始想没到手的,考虑UFL是不是更合适一点,NEU的coop是不是更适合一点。也开始后悔没有投投FIU这样钱多的水校,后悔不该在NJIT之类的学校上浪费钱,感觉好几个kindle被他们都从我手上抢走了似的。10年买的Kindle,现在屏幕的底色明显有些发暗,前两天的deal又没抢到,只能再等等了。

上网上搜索了下前人的评论,感觉poly历年招人挺杂的,有背景很好的,也有西*交大这样的(当然不是西安交大)。找工作的信息也是朦朦胧胧,比如往年都说UTD的EE好找实习,可是论坛上今年看起来那几届很不容乐观,能有实习的都是个位数。UTD似乎从来不拒人的,不过费用不高就是了。

能做的,也只能耐心等待了。

 

Dropbox新问题

dropbox.com是关键字,只有走443端口的才能正常访问;但是由于Dropbox客户端是使用的https,DNS又没有被污染,加上保险设置的hosts,所以客户端一直使用正常。

最近发现电脑的CPU经常跑到99%,开始以为是中毒,仔细一看居然是Dropbox占了99%的CPU。

抓包分析了一下,以前客户端会和stork47.dropbox.com这台主机通过80端口同步信息

现在改成了notify*.dropbox.com,*为1-8的随机数;另外相同的IP还有一个域名是sjc-not*.sjc.dropbox.com。大概每隔一分钟,就会和notify*.dropbox.com走80端口通信一次,这就触到了关键词了,所以么。。。

现在能做的,要么全局走代理;要么本地搭一个代理让80端口走代理,443端口走直连。

搜索了一下,用Privoxy可以做到本地搭建一个http代理,把80端口分流到本地的SOCKS代理也就是SSH上,把443端口走直连,需要在privoxy的config末尾加上

# Dropbox: http –> SOCKS Proxy(7070), https –> direct
forward-socks5 .dropbox.com 127.0.0.1:7070 .
forward .dropbox.com:443 .

如果除了一个SSH代理外,还有一个网通-电信出口http代理用于加速出国流量,则也可以把443的流量分流到这个代理
假设这个http代理是127.0.0.1:8000

# Dropbox: http –> SOCKS Proxy(7070), https –> direct
forward-socks5 .dropbox.com 127.0.0.1:7070 .
forward .dropbox.com:443 127.0.0.1:8000

平淡

你曾有不平凡的心

也曾有很多的渴望

当你仰望头顶蓝天

才发现一切很平常

0.7测试

升级到了0.7的micolog,感觉改进还是不小的,就是主题有点问题,懒得改了

C++效果

//======================================
//Name: Hello.cpp
//Description : Hello World in C++
//======================================
#include <iostream>
using namespace std;

int main() {
    cout << "!!!HelloWorld!!!" << endl; // prints !!!Hello World!!!
    return 0;
}

Python效果

#!/usr/bin/python2.4

def fib():
  '''
  a generator that produces the elements of the fibonacci series
  '''

  a = 1
  b = 1
  while True:
    a, b = a + b, a
    yield a

图像示例