apt-get的三个”加速外挂”替代apt-fast,apt-proz,apt-metalink

apt-get 默认使用的是wget来下载 单线程比较慢 我们这里可以使用apt-get的三个外挂来加速下载
1.Apt-fast
Apt-fast 使用axel来加速下载
Ubuntu用户可以使用这个源来安装

sudo sudo apt-add-repository ppa:tldm217/tahutek.net
sudo apt-get update
sudo apt-get install apt-fast

Debian用户可以去这里PPA 下载新的软件包 也可以去官方下载:http://www.mattparnell.com/linux/apt-fast/henrique[......]

继续阅读

在Debian 5 lenny中chroot安装Debian 6 squeeze

Linux下面总有那么些闭源程序。但是也非常好用,μtorrent就是其中一个。但是Debian 5 lenny的Glibc库是2.7的。μtorrent硬编码来必须使用Glibc 2.11系列才行。现在的主流发行版 包括Debian6和Ubuntu,都是Glibc 2.11系列的。
但是服务器什么的 不是想重装就重装的。VPS不可能也没必要跑虚拟机,没办法咱们用Chroot在Debian 5 lenny中chroot Port 安装Debian 6 squeeze.

本文参考了 http://www.debian.org/releases/stable/i386/apds03[......]

继续阅读

OpenVPN的topology subnet模式,最节约地址的方式

OpenVPN默认的子网掩码是/30 也就是255.255.255.252 在这样的情况下 只有两个地址实际可以用 一个给服务器端 一个给客户端。

这样是很浪费地址的。

http://openvpn.net/index.php/open-source/faq/77-server/273-qifconfig-poolq-option-use-a-30-subnet-4-private-ip-addresses-per-client-when-used-in-tun-mode.html

这是受到windows下面TAP驱动限制导致的。因为windows下的TUN模式是TAP驱动[......]

继续阅读

Debian SID 中OpenVPN 无法在status log正确记录客户端IPV6地址导致freeradius不统计IPV6用户流量的临时解决办法

应该说是SID的一个BUG吧。
Ubuntu 10.04.2 LTS里面的OpenVPN 2.1.0 也有PF_INET6的标记,即可正常连接IPV6的服务器 也能正常接受来自IPV6客户端的连接,也能在openvpn status写入正常的IPV6 Real Address

root@ubuntu:~# openvpn --version
OpenVPN 2.1.0 i486-pc-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] [MH] [PF_INET6] [eurephia] built on Jul 20 2010
Originally de[......]

继续阅读

关于isatap隧道的IPV6的缩略地址下IPV4映射/兼容地址的计算方法

先说一下在123查上面看到的东西
http://www.123cha.com/ip/?q=172.16.156.76

Ipv6扩展地址
Ipv6缩略地址

Ipv6表示地址
2002:ac10:9c4c:0:0:0:0:0
2002:ac10:9c4c::

Ipv4映射地址
0:0:0:0:0:FFFF:172.16.156.76
::FFFF:172.16.156.76

Ipv4兼容地址
0:0:0:0:0:0:172.16.156.76
::FFFF:ac10:9c4c

看下我本机的路由表

[text]ro[......]

继续阅读

用wget镜像网站一例(涉及wget & find & xargs & exec知识)

[bash]wget -mk -w 10 http://cwgl.xzit.edu.cn/[/bash]

-w 10代表间隔10秒下载一个文件,避免频繁访问网站引起不必要的误会。
可以用-A参数指定UA -k表示替换绝对路径为相对路径
下载回来以后 把所有asp文件(非文件夹,文件夹用-type d)重命名为html,

[bash]find . -name "*.asp" -type f | awk -F ".asp$" '{print $1}' | xargs -i mv {}.asp {}.html[/bash]

或者也可[......]

继续阅读

使OpenVPN服务器推送下发chnroutes路由表

IT民工都知道chnroutes,不过这个路由表每过一段时间就要更新,在Windows上面还弄个VBS+批处理 是在是讨厌。
好在OpenVPN除了能推送VPN子网内确定的路由设置外,还能推送客户端子网内以客户端子网为网关的路由。这样我们就可以实现chnroutes路由表的远程下发。然后服务器上弄个定时更新就可以了,这样路由的推送和更新可以实现全自动。

问题的关键在于,一般我们推送路由都是使用vpn_gateway这个变量来指示VPN网关,其实,我们也可以使用net_gateway来指示客户端所在子网网关。OpwnVPN客户端能理解这个变量(除了在2003上面可能有点问题)为自己本地子[......]

继续阅读

PPTP/OpenVPN 利用TC/HTB进行差异化限速的思路和参考脚本

PPTP/L2TP的实现是非常容易的 ,因为每个用户都会生成一个ppp+设备 直接在这个设备上进行速度限制就可以了
在/etc/ppp/ip-up.d/新建一个没有后缀的可执行脚本 内容如下即可:

[bash]#!/bin/bash
speed=612kbps
#删除之前的定义
tc qdisc del dev $1 root
#重新定义策略
tc qdisc add dev $1 root handle 2: htb default 10
tc class add dev $1 parent 2: classid 2:1 htb rate 100mbps ceil 100[......]

继续阅读

正确的删除tc的filter过滤器

直接用过滤器的生成规则去删除TC的filter会导致所有过滤器都被清空
正确的方法在邮件列表面有提到
不像class,添加后 想要删除很简单 直接把TC命令中的add换成del就可以了,如果class重复,就会像添加路由出错时候一样有提示。
但是filter不一样,相同规则的filter可以不断持续的添加,规则添加后,内核会用不同的句柄号(handle)来区分,
删除一个filter,不能简单的把规则的add换成del,那会删除所有的filter规则,因为你没有提供最重要的句柄号(handle) 没有提供就是0 是0就会删除所有规则。

You must at least pr[......]

继续阅读

OpenVPN With FreeRadius Via Radiusplugin on Debian

RadiuspluginCVS)插件能使OpenVPN支持radius的用户认证和计费 除了支持最基本的

  • framed ip address
  • framed routes
  • acct interim interval
  • 三大属性外,还能通过外部脚本实现用户自己定义的属性。

    整个OpenVPN的部署过程和这篇文章讲的类似,主要是有如下不同(这些不同在Radiusplugin的README/CNF配置文件文件里面都有)

    plugin /etc/openvpn/radiusplugin.so /etc/openvpn/radius.cnf
    username-as-com[......]

    继续阅读