Recent Posts
-
May 12, 2017
Linux内核ipset源码阅读
我之前还在想怎么自己在内核管理大量的ip和mac地址,然后自己做hash匹配之类的。不过linux内核里面有个ipset真是太方便了。联合iptables使用的话,用ipset 来管理大量的ip 端口还有mac地址这些,这样就可以避免创建大量条目的 iptables规则了。只用创建一条规则,然后set match and SET target of iptables 就可以了。这样在有的场合,比如要封禁大量ip的时候,非常有用,应该可以大量提高系统性能。因为iptables如果上千的规则条...
-
May 12, 2017
Linux内核ebtables源码阅读
The ebtables program is a filtering tool for a Linux-based bridging firewall. It enables transparent filtering of network traffic passing through a Linux bridge. 只能应用于linux bridge桥设备上面,这个是硬伤,比如你想应用于某个物理网卡,那首先要配置linux桥设备,然后把物理网卡作为桥设备的子端口添加上去才行最好先...
-
May 11, 2017
Linux内核conntrack连接跟踪源码阅读
对应的源码在这几个目录下linux-4.11\net\netfilter\nf_conntrack*linux-4.11\net\ipv4\netfilter\nf_conntrack*linux-4.11\net\ipv6\netfilter\nf_conntrack*netfiler的挂载点/* Connection tracking may drop packets, but never alters them, so make it the first hook. */stat...
-
May 10, 2017
Linux内核vlan和vxlan源码阅读
vlan (802.1q)通常的vlan是指IEEE 802.1q标准定义的virtual LANs, 就是在以太网头部插入一个vlantag来划分子网的技术。linux内核的vlan相关代码都在源码的linux-4.11\net\8021q 这个目录下面。操作skb的vlan的辅助函数vlan_insert_tagskb_vlan_untagskb_vlan_popskb_vlan_push接收接收上来的包明显要经过vlan_do_receive函数来处理,用这个函数一搜索就看到包怎么从...
-
April 25, 2017
用open vswitch和open virtual network构建linux网关(软路由器)
好像最近open vswitch改进很多,搞了一个OVN(Open Virtual Network ),现在也支持 connection tracking 和 NAT功能了。那stateful firewall就可以实现了,应该是可以抛iptables了吧。OVN还是比较有意思的,已经支持L3 router功能了,不需要linux内核的ip协议栈的参与了, 集成dhcp 还有arp过滤等功能。看上去应该是可以取代linux的 “软路由”功能了,这个东西如果配合ovs-dpdk的datapa...
-
April 18, 2017
Centos7 64bit在virtualbox编译制作busybox启动盘
1。 下载最新的 busybox-1.26.2, makemenuconfig 去掉不需要的功能(直接改.config文件也可以)make install 会在 busybox的源码_install目录下创建好所有的命令的软连接。我编译出来的busybox有600多k。[ming@centos7 initrd-busybox]$ ls -lh bin/busybox -rwxr-xr-x. 1 ming ming 646K Apr 17 14:32 bin/busybox 基于这个 _...
-
April 11, 2017
Squashfs和overlayfs文件系统
squashfs 是压缩只读文件系统,类似的文件系统有很多,但这个好像比较流行一些吧。overlayfs 把另外一个可写的目录和这个只读目录合并起来实现“copy-on-write”机制的可写目录。这两个都已经被收入最新的linux内核里面去了。这个好像是一个比较流行的组合, squashfs提供高压缩比的只读镜像,然后overlayfs在squashfs上面提供可写功能。一些嵌入式发行版比如openwrt会用,还有ubuntu等的liveCD也就是系统安装光盘,还有Docker的镜像系统...
-
March 18, 2017
Wifi热点强制登录认证页面captive portal相关资料
什么是Captive Portal大家肯定都连过公共场所的wifi热点,比如麦当劳等地方的。他们的wifi往往一连上去就会弹出一个要求登录或者微信关注之类的页面,只有在这个页面完成操作了才能正常访问网络的。之前看到这个很神奇,为什么一连wifi,手机就会自动打开这个网页的,就知道android系统应该是提供了一些接口的。最近接触到这个,查了一下才知道这个东西叫做“captive portal”,就是专门用来给后端的网关提供鉴权计费之类的服务的。很多公共场合的wifi热点应该都用了这么一个技...
-
November 24, 2016
Docker容器技术和infoq上面相关的演讲视频
http://www.infoq.com/cn/Dockers/presentations/容器技术栈,开源项目资源调度 Mesos Swarm Kubernetes服务编排 Compose Kubernetes marathon监控 cAdvisor Sysdig Datadog访问管理 LDAP AD Github SAML镜像,发布 DockerHub Quay.io Artifactory分布式计划任务 chronos容器引擎 docker Rkt Triton VIC安...
-
October 12, 2016
C#例子把bing每日图片设置为windows10桌面背景bingwallpaper
Wallpaper.cs 微软设置桌面背景的参考代码using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Runtime.InteropServices;using System.ComponentModel;using Microsoft.Win32;using System.Drawing;us...