EdgeRouter 策略路由实现分析

最近家里的路由规则越来越复杂,而且越来越好用。正好昨天跟朋友讨论他的家用路由改造方案,所以研究了一下EdgeRouter的策略路由(Policy-based Routing,PBR)的实现。

我家里的路由是EdgeRouter Lite,固件1.9.1.1,这个实现跟固件关系不大。

首先,我们可以参考一下官方的文档:EdgeRouter – Policy-based routing (source address based)

Continue reading “EdgeRouter 策略路由实现分析” »

EdgeRouter 策略路由实现分析 by @sskaje: https://sskaje.me/2017/06/edgerouter-policy-based-routing-analysis/

Incoming search terms:

SphinxQL FACET is Awesome

FACET clause. This Sphinx specific extension enables faceted search with subtree optimization. It is capable of returning multiple result sets with a single SQL statement, without the need for complicated multi-queries. FACET clauses should be written at the very end of SELECT statements with spaces between them.

FACET {expr_list} [BY {expr_list}] [ORDER BY {expr | FACET()} {ASC | DESC}] [LIMIT [offset,] count]
SELECT * FROM test FACET brand_id FACET categories;
SELECT * FROM test FACET brand_name BY brand_id ORDER BY brand_name ASC FACET property;

The FACET Feature

SphinxQL FACET is Awesome by @sskaje: https://sskaje.me/2015/06/sphinxql-facet-awesome/

OS X 下采集程序调用:sample

之前在看某个软件,一直没找到注册算法的位置。然后就发现了这个命令行工具:https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/sample.1.html

sample — Profile a process during a time interval

sample is a command-line tool for gathering data about the running behavior of a process. It suspends
the process at specified intervals (by default, every 1 millisecond), records the call stacks of all
threads in the process at that time, then resumes the process. The analysis done by sample is called
sampling” because it only checks the state of the program at the sampling points. The analysis may
miss execution of some functions that are not executing during one of the samples, but sample still
provides useful data about commonly executing functions.

Profile的工具,作为逆向调试来说,再好用不过。

OS X 下采集程序调用:sample by @sskaje: https://sskaje.me/2015/04/os-%e4%b8%8b%e9%87%87%e9%9b%86%e7%a8%8b%e5%ba%8f%e8%b0%83%e7%94%a8%ef%bc%9asample/

Incoming search terms:

Nginx 反向代理 过滤Cookie

一个项目需求需要过滤HTTP头中的特定cookie项目。
代理使用nginx搭建,编译参数如下:

其中用到了两个插件:

https://github.com/simpl/ngx_devel_kit
https://github.com/openresty/lua-nginx-module

参考示例:

参考过滤脚本:

测试用例

Nginx 反向代理 过滤Cookie by @sskaje: https://sskaje.me/2015/03/nginx-proxy-filter-cookie/

Incoming search terms:

PHP解密AES

分析某客户端协议,发现如下代码:

这个和之前分析航旅纵横客户端时的代码类似,都是128位ECB。
当时只是用openssl看了看请求:

于是参考mcrypt的文档,写了简单的代码实现上边Java代码里的AES 128 ECB加密解密

PHP解密AES by @sskaje: https://sskaje.me/2015/02/php-aes-encrypt-decrypt/

Incoming search terms: