分类:网络

Unix Like, 操作系统, 网络

Fix Ubuntu policy-based route with fwmark not work

近期发现Ubuntu基于ip rule add fwmark … lookup …所做的策略路由无法正常使用,而Debian正常。抓包的特征就是,出网数据包能应用到策略路由,也能抓到回应的数据包,但回应的数据包被内核丢弃,不会送达user space。 而ip rule add from … lookup …则正常。 查找资料得知是rp_filter的影响(见此:https://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt),继而发现Ubuntu的/etc/sysctl.d是有 […]

Read more No Comments
Unix Like, VPN, 操作系统, 网络

Linux Policy-based site-to-site IPsec VPN动态IP的配置及内网穿透的应用(StrongSwan)

上一篇文章提到了一点StrongSwan的配置。 本文继续使用StrongSwan。 StrongSwan的left和right是支持使用域名的,利用此可以实现动态IP的支持;上一篇文章用了type=transport模式转发UDP端口构建L2TPv3,如果没有L2组网的需求,其实可以直接利用type=tunnel模式实现L3转发。 网络拓扑: 上图中的路由器lan-router1和lan-router2都是通过pppoe接入互联网的,域名lan-router1.router和lan-router2.router通过ddns分别解析到了各自pppoe0的IP地址上;server1和server […]

Read more No Comments
Unix Like, VPN, 网络

Linux L2TPv3以及ip-xfrm的配置

L2TPv3:http://man7.org/linux/man-pages/man8/ip-l2tp.8.html ip-xfrm:http://man7.org/linux/man-pages/man8/ip-xfrm.8.html 这两个都是kernel内置的功能,通过这两个可以直接构建加密的VPN。 本文尝试使用ip-xfrm创建加密的隧道,并基于此隧道构建L2TPv3 VPN。 1. 生成密钥与ID 不使用StrongSwan,手动配置ip-xfrm时需要用到: HASH_KEY=0x`dd if=/dev/urandom count=32 bs=1 2> /dev/null| […]

Read more No Comments
Windows, 操作系统, 网络

东莞城院校园网 – 网络共享限制解除工具

刚考完试那天,学校新版的网络刚好部署到了我的宿舍区,当天探究了一下,有了点发现,不过刚考完试,浪了好久,所以现在才弄。 来看本文的,相信都懂什么情况,我废话也少说。   注意事项 程序目前是预览版,校园网共享的检测也不好触发,因此未经我长时间测试,不保证效果,有兴趣,有需要的欢迎尝试使用,遇到问题可在本文留言或在GITHUB上提交ISSUE。 程序需要一直运行才能解除限制,且只能解除运行了此程序的计算机的限制,也就是说,你在你的Windows计算机上运行了此程序,和你使用同一个网络,但未运行此程序的计算机理论上还会受到限制,但即使使用了相同网络的其它设备受到了限制,运行了此程序的计算 […]

Read more 7 Comments
NOTE, 网络

涉及NAT的长连接问题

A为服务器;B是一个在内网的计算机,经路由器C NAT可访问Internet,路由器C拥有一个Internet IP。 最近在给A与B弄UDP长连接:B主动向A构建UDP长连接,长连接构建成功后,刚开始,A与B分别都可以通过长连接主动向对方发送数据。 长连接闲置一段时间后,该长连接开始无法使用,需要B主动重新构建长连接后方可恢复。   具体原因可见IP Network Address Translator (NAT) Terminology and Considerations (RFC 2663) – 2.6. End of session for TCP, UDP a […]

Read more
Unix Like, 操作系统, 网络

QoS —— 交互式应用最低延迟,HTTP(S)、IMAP等常用服务优先,迅雷、P2P受限

前言 使用迅雷全速下载时,其余网络应用的体验几乎约等于断网状态。 全速下载时,迅雷并没有占用太多上行带宽,于路由器上观察上行速率,同样正常: 可见全速下载时出现的现象,问题在于下行。 迅雷全网搜索资源,这意味着会有许多来自不同地方的计算机,以高速率往我的计算机发来大量数据包。ISP处的队列早已被这些P2P数据包塞满,而SSH、网页等服务的数据包速率不高,根本不够P2P数据包竞争,这些数据包到达ISP处时,只能由于队列已满而被丢弃。   其实这个问题,并没有什么好的解决办法,因为ISP处的队列我们没有权限控制。 我们所能做的,只是控制P2P的速率,避免因ISP处队列满而使得数据包被丢弃 […]

Read more No Comments
Unix Like, 操作系统, 网络

使用策略路由实现涉及getsockopt(…, SO_ORIGINAL_DST, …)程序的远程调用(Redsocks, ss-redir之类的远程调用)

Redsocks/ss-redir的实现 DNAT与REDIRECT模块在iptables target extension之列。 这两个模块都能根据参数,修改数据包的header中的目的IP和端口。 既然修改,那就不是附加,毕竟网络层传输层header的内容怎么可能随随便便增删呢,这意味着,数据包的真实目的地会被完完全全地抹掉! Redsocks/ss-redir收到这样的数据包后,不做特殊处理,何以知道这数据包原来想发给谁呢? 这些程序之所以能正常工作,得益于NAT的透明性,被NAT处理的数据包,在内核中均有所记录,NAT后的正常通讯由NAT发起者维持,Redsocks/ss-redir这 […]

Read more 2 Comments
Unix Like, VPN, 操作系统, 服务器

一款鲜为人知的杰出VPN方案 —— ACCEL-PPP

因PPTP简单、方便,无特别需要,平时需要用到VPN时一般都会首选PPTP。 数月前使用PPTP的过程中发现,Linux下的PoPToP方案极限速率仅有20 Mbps左右,而Windows下“网络策略和访问服务”提供的PPTP上限速率则高些,能达到70 – 80 Mbps。 当时了解到一款名为ACCEL-PPP的方案,尝试了一番,效果不负其名——ACCEL。 但今天发现,此方案的中文介绍、资料近乎无(英文介绍也不多),遂撰写此文,欲让更多人了解到此杰作。   服务器配置: CPU: Intel Xeon L5520 *2 RAM: 48GB 网络适配器: Intel 千兆 […]

Read more 13 Comments
Unix Like, 操作系统, 网络

[翻译]Linux网络栈之队列

原文信息 标题: Queueing in the Linux Network Stack 链接: https://www.coverfire.com/articles/queueing-in-the-linux-network-stack/ 作者: Joseph Prem   警告 除特别声明或获得许可,否则本站文章一律禁止转载。   以下为译文 数据包队列是任何一个网络栈的核心组件,数据包队列实现了异步模块之间的通讯,提升了网络性能,并且拥有影响延迟的副作用。本文的目标,是解释Linux的网络栈中IP数据包在何处排队,新的延迟降低技术如BQL是多么的有趣,以及如何控制缓冲 […]

Read more No Comments