屌丝自制路由器 破校园网络封锁

路由器 (1.9万) 2014-02-12 13:48:36

世界上本来就有屌丝,只不过有人给屌丝取了“屌丝”这个名字,屌丝才被称作“屌丝”。“少壮不努力,老大搞IT”,作为一名姑且称之为“IT人士”的屌丝,暮然回首,原来自己一直都是屌丝,并没有因为“屌丝”的名字只是新近出现,而缩短当屌丝的时间。想当年,青葱岁月,大好年华,没有花前月下,却都献给了计算机。不过,令本屌丝欣慰的是,还是为人民造了些许福利的,那就是成功把校园网宽带共享给了两个兄弟宿舍。

大学校园网一般都会采取一定的网络限制,所有用户都得通过客户端接入,这样“邪恶”的校园网管理员就可以坐等收取源源不断的网费了,只要你想上网就要每个月上交50元网费。今天看来,钱虽不多,但是对于还木有任何收入的屌丝来说,一年下来也要小半千哪,一个宿舍六个人加起来那就更多了,两个宿舍加起来那就更不用说了啊。本屌丝虽然数学不好,但是万儿八千的数字还是能算得清的。

适逢当时本屌丝学习到Linux iptables防火墙,才知道原来俺们可以不用花那么多钱来上网的!咋回事呢,不就是我们可以给他来个NAT转发么,没有可以安装客户端的路由器,难道还没有可以安装客户端的电脑么。理论上这是行得通的,但是实施起来还是需要耗费一些脑细胞的。因为你能想到的,邪恶的网络管理员也能想到。这里给还在象牙塔里还有刚刚步入“IT行业”的屌丝们一个好的建议,捯饬“IT”这个东西,一定要做到“胸有成竹”以后才能开始动手。

本屌丝把整个事在脑子里捋顺如下:

第一步:虚拟出一个网卡来

第二步:配置好NAT转发

第三步:接入校园网

这个方案说白了就是做一个“软路由”,伟大的“百度一下”告诉我们,软路由是指利用台式机或服务器配合软件形成路由解决方案,主要靠软件的设置,达成路由器的功能;而硬路由则是以特用的硬设备,包括处理器、电源供应、嵌入式软件,提供设定的路由器功能引。当然,在windows平台下也有许多的路由软件,但是,由于windows下的软路由相对来说被万恶的网管监管的比较严,加上每隔一段时间客户端就会扫描有没有多网卡路由转发的情况,所以,实施起来也是有难度的。

为什么本屌丝要采用linux机器做软路由呢,主要是恰好当时(大概是2008年)另一位神级的女屌丝,竟然千里迢迢从家里带来了一台赛扬三、内存128M的品牌机,造型迷你,性能免谈,后来就被本屌丝改成“路由器”,在宿舍发挥余热。系统也被换成Red Hat 9.0,iptables是linux平台上系统级的防火墙,所以用不着独立安装,装好最基本的系统就已经附带了该功能。时过境迁,当时的设备流入了二手奸商的手中。但是,后浪推前浪,校园网共享愈演愈烈,现在已经成为一个不能说的秘密。今天,本屌丝也紧随潮流,借鉴网络高手的方法,告诉大家如何做一个UBUNTU版的软路由器,希望使用某校园网的童鞋能有所收获。(仅供交流参考,本屌丝不负任何法律责任)

整个方案需要用到的东西有:废旧电脑一台(做软路由使用),hub(路由器、交换机都行)一个(连接所有的寝室电脑),网线若干。把充当路由的旧电脑网线连到任意一个LAN口,寝室其他电脑的网线也都连到LAN卡口。因为是单物理网卡,所以我们首先要在软路由电脑上虚拟一个网卡,设置两个IP地址,一个用于连接外网,一个用于连接内网。一定注意不要把两个IP弄混,内网IP可以使用静态分配也可以使用动态分配。

第一步:给做软路由的旧电脑添加虚拟网卡。修改网卡配置文件 添加虚拟网卡

在debian或者ubuntu下,网卡的配置文件是/etc/network/interfaces,所以我们修改它:

sudo vim /etc/network/interfaces在这个文件中增加如下内容并保存:

auto eth0:0

iface eth0:0 inet static

address 192.168.1.63

netmask 255.255.255.0

network 192.168.1.1

broadcast 192.168.1.255保存后,我们需要重启网卡(重新加载配置文件)才会生效,使用如下命令重启:

sudo /etc/init.d/networking restart

开启路由功能:

在文件/etc/sysctl.conf添加net.ipv4.ip_forward = 1

设置iptable规则:

iptables -F

iptables -P INPUT ACCEPT

iptables -P FORWARD ACCEPT

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

在文件 /etc/rc.local 里加入上面的几行(注意,加在 exit 0 的前面)

目前,基本条件已经具备,所有的IP地址需要各位根据实际情况设置。下一步我们需要做的是安装和配置校园网客户端,接入互联网。

至于当时本屌丝使用的是哪家的校园网,这里不便透露。只给大家透露这个校园网客户端的名字,已经使用方法。这个校园网linux版客户端到底是官方制作还是三方制作,现在也不得而知,只知道它的名字是xrgsu。另外,在安装这个客户端之前,有些需要大家注意的,就是linux和windows在安装软件时有些不同,一般在windows下装软件,“下一步”基本都能OK,但是linux下就没那么轻松,得看这个软件包还需要什么库文件,如果缺少,还要先把库文件补上。这个xrgsu在ubuntu上缺少一下几个库文件,希望网友注意提前安装。(可以在Ubuntu packages站点搜索并下载)

安装

·按下Alt+F2键,在调出的运行对话框中输入gksu。这样就开启了管理员运行对话框,接着在弹出的运行框中输入nautilus。调出管理员专用的文件管理器,进入目录/usr/local/,并新建目录bin,复制xrgsu到bin中。

·打开终端,输入命令

sudo ln -s /usr/lib/libpcap.so.0.7.2 /usr/lib/libpcap.so.0.6.2

sudo chmod 744 /usr/local/bin/xrgsu

配置

直接在终端中运行

sudo xrgsu

进入配置模式,认证时的选项如下:

a.please input your user name:

软件请求输入认证用户名

b.please input your password:

软件请求输入认证密码

c.Use DHCP,1-Use,0-UnUse(Default: 0):

如果操作系统使用了DHCP获得动态地址,请选择1,否则请选择0

d.Use default auth parameter,0-Use 1-UnUse(Default: 0):1

是否使用默认的参数进行认证,选择0将使用默认的参数进行认证,并且不在询问后面的参数

e.please input Eap-start Timeout(Default: 30s):30

请输入Eap-start报文的超时时间,单位为秒

f.please input Eap-response Timeout(Default: 30s):30

请输入Eap-Response报文的超时时间,单位为秒

g.please input Eap-packet resend Time(Default: 3):3

请输入报文的重传次数

h.Use Red-Giant private MAC? 1-Use,0-UnUse(Default: 1):1

是否使用星网锐捷的私有组播地址进行认证,选择0将不使用,这时软件使用802.1x标准组播地址进行认证。

运行

·静态IP环境直接输入命令,可完成认证,注意:如果你使用静态IP的方式,请手动指定系统的IP和DNS服务器地址。

sudo xrgsu -a

DHCP动态IP环境下执行认证操作,输入命令

sudo xrgsu -d

sudo xrgsu -a

软件在认证完成后将调用ifup命令获取IP地址,如果您的设备使用其他的命令获得IP地址,请将相应的命令附加在参数中,例如:sudo xrgsu -d ifup eth0,然后再运行:sudo xrgsu -a

·当你看到,下面的提示时,就证明认证成功,可以上网了。

Searching server...

Connecting server...

Authenticating...

Authenticate SUCCESSFULLY! //SUCCESSFULLY!

Please input 'unauth' to LogOff: //

好的,至此如果没有其他问题的话,其他的寝室屌丝成员就可以共享上网了。

THE END

发表评论