From 9046fd588934ee39c0d3ff2f7825de8072eff9ae Mon Sep 17 00:00:00 2001 From: wangyu- Date: Fri, 18 Aug 2017 21:34:37 -0700 Subject: [PATCH] Update README.zh-cn.md --- doc/README.zh-cn.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/doc/README.zh-cn.md b/doc/README.zh-cn.md index ed176d0..1fd5f9e 100644 --- a/doc/README.zh-cn.md +++ b/doc/README.zh-cn.md @@ -35,10 +35,10 @@ Client能用单倍的超时时间检测到单向链路的失效,不管是上 对于有大量client的情况,对于不同client,server发送的心跳是错开时间发送的,不会因为短时间发送大量的心跳而造成拥塞和延迟抖动。 -### 加密 防重放攻击 防中间人攻击 +### 加密 防重放攻击 用aes128cbc加密,md5/crc32做数据完整校验。用类似ipsec/openvpn的 replay window机制来防止重放攻击。 -设计目标是,即使攻击者可以监听到tunnel的所有包,可以选择性丢弃tunnel的任意包,可以重放任意包;攻击者也没办法获得tunnel承载的任何数据,也没办法向tunnel的数据流中通过包构造/包重放插入任何数据。client和server互相认证对方,无法被中间人攻击。 +设计目标是,即使攻击者可以监听到tunnel的所有包,可以选择性丢弃tunnel的任意包,可以重放任意包;攻击者也没办法获得tunnel承载的任何数据,也没办法向tunnel的数据流中通过包构造/包重放插入任何数据。 ### 其他特性 信道复用,client的udp端支持多个连接。 @@ -137,7 +137,7 @@ facktcp模式并没有模拟tcp的全部。所以理论上有办法把faketcp和 大部分udp2raw不能连通的情况都是设置了不兼容的iptables造成的。--lower-level选项允许绕过本地iptables。在一些iptables不好改动的情况下尤其有效(比如你用的是梅林固件,iptables全是固件自己生成的)。 ##### 格式 -`eth0#00:23:45:67:89:b9` 。`eth0`换成你的出口网卡名。`00:23:45:67:89:b9`换成网关的mac地址(如果client和server在同一个局域网内,可能不需要网关,这时候直接用对方主机的mac地址,这个属于罕见的应用场景,可以忽略)。 +if_name#dest_mac_adress,例如 `eth0#00:23:45:67:89:b9` 。`eth0`换成你的出口网卡名。`00:23:45:67:89:b9`换成网关的mac地址(如果client和server在同一个局域网内,可能不需要网关,这时候直接用对方主机的mac地址,这个属于罕见的应用场景,可以忽略)。 ##### client端获得--lower-level参数的办法 在client 端,运行`traceroute `,记下第一跳的地址,这个就是`网关ip`。再运行`arp -s <网关ip>`,可以同时查到出口网卡名和mac。 @@ -151,6 +151,8 @@ facktcp模式并没有模拟tcp的全部。所以理论上有办法把faketcp和 ##### 注意 如果用了`--lower-level`选项。server虽然还可以bind在0.0.0.0,但是因为你显式指定了网络接口,就只能工作在这一个网络接口了。 +如果arps -s命令查询失败,那么可能是因为你用的pppoe方式的拨号宽带,这种情况下if_name填pppoe产生的虚拟interface,des_mac_adress填00:00:00:00:00:00,例如`ppp0#00:00:00:00:00:00` + # 性能测试 iperf3 的UDP模式有BUG,所以,这里用iperf3的tcp模式,配合Openvpn,测试udp2raw的性能。(iperf3 udp issue ,https://github.com/esnet/iperf/issues/296 )