pcap-filter手册

网络包过滤语法。tcpdump的expression。

描述

pcap_compile()是用来编译一个字符串到过滤程序的函数。这导致过滤程序可以决定哪些包可以提供给pcap_loop(), pcap_dispatch(), pcap_next(), pcap_next_ex()

……

Continue reading

tcpdump手册

tcpdumpdump网络包。

概要

tcpdump [ -AbdDefhHIJKlLnNOpqRStuUvxX ]
        [ -B buffer_size ] [ -c count ]
        [ -C file_size ] [ -G rotate_seconds ]
        [ -F file ] [ -i interface ]
        [ -j tstamp_type ] [ -m module ]
        [ -M secret ] [ -P in|out|inout ]
        [ -r file ] [ -V file ] [ -s snaplen ]
        [ -T type ] [ -w file ] [ -W filecount ]
        [ -E spi@ipaddr algo:secret,...  ]
        [ -y datalinktype ] [ -z postrotate-command ]
        [ -Z user ]
        [ expression ]

描述

tcpdump打印网络接口上匹配expression网络包的描述内容。另外它可以使用-w参数, 将包数据保存到文件中,以便后期分析,后期可以使用-r参数读文件中取包数据。 它还可以使用-V参数,让它从多个文件中读取。所有情况下,tcpdump只处理匹配expression的包。

……

Continue reading

tenfyzhong/goenv库介绍

goenv库将环境变量的值设置到一个结构体里, 以方便使用。类似于encoding/json解析到结构体。

背景

为了简化docker的发布,把配置从配置文件里抽取出来,设置到环境变量里。然后发布docker 容器的时候就不需要再带一个配置文件了。

……

Continue reading

golang交叉编译

golang的交叉编译。

golang的交叉编译非常简单,只要配好对应的环境变量后再go build就可以了。 需要配置以下的环境变量。

CGO_ENABLED

默认情况下这个变量为1。 交叉编译不支持cgo,所以需要关闭cgo。 linux/unix下为CGO_ENABLED=0。 windows下为set CGO_ENABLED=0

……

Continue reading

vim宏的使用

本文介绍vim宏以及它的魔法。

宏是什么

vim的宏就是把一系列动作录制起来,然后可以进行播放可以执行同样动作的功能。 它是vim中最具有魔法的操作了。可能会有人觉得.重复操作更具有魔法,但是.只能记 重复上一次命令,能做的事情有限,所以它最多就是最经常使用的命令而已,并没有魔法。

……

Continue reading

制作U盘启动盘

本文介绍在osx和linux下制作U盘启动盘的方法。

假如要把ubuntu.iso做成启动盘。

osx下制作启动盘

osx下制作启动盘,需要先将iso转成dmg格式的镜像。然后再把dmg dd到U盘里

……

Continue reading

nginx旁路

旁路的目的是为了把请求复制一份发到另外的服务上去。这样就可以不影响主流程的情况下 处理额外的逻辑了。最简单的方式就是让nginx把请求发出去,这样我们只要改配置就行了, 而不用改代码。相对于开发,测试回归的成本往往要高很多。

……

Continue reading

nginx配置http basic认证

http basic认证允许我们对自己的web服务器做简单的认证。可以适当的防止别人浏览器我们 的页面。

为什么需要http basic认证

对于一些简单的web服务需要做简单的认证。比如:

……

Continue reading

linux只允许程序的一个进程实例运行

有的时候,我们需要确保当前只有一个进程实例在运行。特别是定时跑定时任务的时候。

unix/linux的cron可以配置定时任务,让它在指定的时间运行。但是,只要到任务指定的时 间,cron就会fork一个新的进程来执行任务,它不会保证前一个任务运行完成了,下一个任 务才开始。而有时我们却需要只能有一个实例运行。

……

Continue reading