V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
sogisha
V2EX  ›  分享创造

用来■■的代理 Fyuneru v1.1 完成

  •  4
     
  •   sogisha ·
    sogisha · 2015-11-05 08:27:35 +08:00 · 5342 次点击
    这是一个创建于 3305 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Fyuneru 是一个想尽办法在本地和服务器上建立虚拟网卡、相互通信的程序。用途当然是自行发挥了~

    关于 Fyuneru 的设计,之前很早的一个主题 /t/215759 里已经介绍。简单说就是将虚拟网卡的 IP 数据包加密后通过各种可以想象的渠道随机在服务器和本地机之间传送,实现类似 VPN 一样的功能,但没有 VPN 的协议特性。


    v1.1 版本在代码上做了很大的变动,可以说和前一个版本完全不同,但主要是内在机制的变化,例如 IPC 和借助 IPC 实现的对主进程和代理进程的控制 blablah ……估计没人关心这个,所以省略( 70 多个 commit 呢!)

    支持利用的渠道有: sh■■■■ks-libev 和 XMPP ,详见 README 。第一个版本用来演示的 websocket 方式被我删除了。

    • sh■■■■ks-libev 必须是 libev 版本的,因其支持 UDP 隧道。
    • XMPP 方式理论上可以利用最多两个额外的 XMPP 服务器(当服务器和本地计算机使用的 XMPP 帐号非同一服务器提供时),这样可以分散从本地计算机传出连接的目标,隐藏真正服务器的地址。

    v1.1 需要的配置文件示例在 github 上有一份。不兼容早期版本的配置文件。

    以上代理方式都可以按照需要配置多个,启动多个不同的进程(比如 2 个 XMPP 代理, 2 个 S 代理)。但是要考虑服务器的资源。目前测试, XMPP 代理占用内存还似有问题,需要进一步改进。


    这个 v1.1 的发布颇为匆忙,先写到这里,如果有疑问,我会在下面尽量回复。
    自然, Bug 什么的欢迎到 github 开 issue ~

    23 条回复    2015-11-06 08:11:51 +08:00
    yexm0
        1
    yexm0  
       2015-11-05 08:31:59 +08:00 via Android
    win 能用不?
    unique
        2
    unique  
       2015-11-05 08:33:21 +08:00 via iPhone
    略 diao
    lekai63
        3
    lekai63  
       2015-11-05 08:36:45 +08:00
    先看看 readme 了解下先~~
    速度如何呢?相对于直接用 sh■■■■ks 客户端配合服务端 sh■■■■ks-libev
    sogisha
        4
    sogisha  
    OP
       2015-11-05 08:38:14 +08:00
    @yexm0 目前只有 Linux 能用。。。。。。因为虚拟网卡需要用到 TUN/TAP 设备,目前程序只会打开 Linux 下的。
    有人和我说不要用 TUN 设备,还是做成传统的 socks 代理,这个大家可以讨论下。。。。。。
    不过既然 OpenV*N 都能在 Windows 下用(有驱动),以后也应该可以。
    tobyxdd
        5
    tobyxdd  
       2015-11-05 09:04:43 +08:00 via Android
    赞...我也正在 win 下用 TAP 驱动写一个类似 surge 的可自定义 tunnel
    ck65
        6
    ck65  
       2015-11-05 09:07:03 +08:00 via iPhone
    Such ■■ so ■■ wow
    GPU
        7
    GPU  
       2015-11-05 10:05:04 +08:00
    @tobyxdd 开源?有地址?

    我不是很懂楼主这个是什么。
    a3587556
        8
    a3587556  
       2015-11-05 10:33:15 +08:00
    @sogisha sh■■■■V■N 在 win 下就可以用,需要装虚拟网卡,可以参考下。
    002jnm
        10
    002jnm  
       2015-11-05 10:49:52 +08:00
    楼主,启动报错怎么办
    Traceback (most recent call last):
    File "./run_as.py", line 13, in <module>
    from fyuneru.util.config import Configuration
    ImportError: No module named util.config
    moliliang
        11
    moliliang  
       2015-11-05 11:17:09 +08:00
    赞一下,期待多用户版~ : 0
    tobyxdd
        12
    tobyxdd  
       2015-11-05 11:36:53 +08:00 via Android
    @tobyxdd work in progress..
    kknd22
        13
    kknd22  
       2015-11-05 11:50:44 +08:00
    然而首先你得有一台 VPS
    qgy18
        14
    qgy18  
       2015-11-05 11:57:17 +08:00 via iPhone
    这个黑色方块是自动替换的?
    lizhenda
        15
    lizhenda  
       2015-11-05 12:06:34 +08:00
    黑块是 翻墙 吗?话说是干嘛的这个 ss 不是自带客户端么,蛮好用的
    letitbesqzr
        16
    letitbesqzr  
       2015-11-05 12:12:08 +08:00
    shadowsocks ...我试试是不是自动替换的
    Antonidas
        17
    Antonidas  
       2015-11-05 12:58:58 +08:00
    @letitbesqzr 智商捉鸡...
    sogisha
        18
    sogisha  
    OP
       2015-11-05 13:30:12 +08:00
    @002jnm 真是奇了怪了,不知道为啥 fyuneru/util/__init__.py 没了,我加了回去
    sogisha
        19
    sogisha  
    OP
       2015-11-05 14:18:32 +08:00   ❤️ 1
    @lizhenda 这个并不是在 ss 上又加一层,我希望的是能用各种代理来发我的数据包, ss 只是其中一种。比如现在就有利用 xmpp 协议的模块。以后大概还会有别的模块的。

    因为数据包是通过多个代理发出去的,所以能做到,不只是走从你的计算机到服务器这样的单一一个连接,而是让你的电脑首先连接很多别的服务器,再借助它们把你的数据包投递出去。这样,对墙来说,就很难确定你是在翻,也很难确定你自己的服务器的地址。( XMPP 模块是能做到这一点的)

    而且这种“拆解”一个连接的方法,是在 TCP 之下就完成的,也就是说,即使是同一个——比如访问网站的——请求,发出的请求和得到的响应,都是在不断变换路线。我认为这样可以提高生存性。
    lizhenda
        20
    lizhenda  
       2015-11-05 14:25:47 +08:00
    听起来确实很不错,不过要做到易用性就很难了吧。已收藏,看之后发展~
    Eleutherios
        21
    Eleutherios  
       2015-11-05 17:46:26 +08:00 via iPhone
    这个东西本质上不是用来翻 Q 的,因为实际的代理是被外包出去的。
    听起来倒是有点儿像 Tor ,区别是 Tor 从深度上将链接多层嵌套加密,而这个从广度上将链接横向拆解。
    然而由于 CS 架构,服务端实际还是会暴露使用者的身份,所以也不是个匿名工具。

    所以…实际是个代理轮询?总觉得有什么地方有点儿怪。
    sogisha
        22
    sogisha  
    OP
       2015-11-05 20:27:32 +08:00   ❤️ 1
    @Eleutherios 实际的代理有些也是程序的一部分啊,比如登录 xmpp 收发消息就是我自己写的,至少可以算是用 xmpp 代理的 vpn 呢。以后如果可能还可能有基于 PING 的代理。所以不全算是外包(不安装 ss ,只配置一个自带的 xmpp 代理,也是可用的,但这样搞 TCP over TCP ,我不太喜欢)。

    我觉得不像 Tor ,这种拆解链接的方式并不能共享(目前如此),安全性和 Tor 没法比。

    至于 CS 架构,多数翻 Q 的都是吧。服务器上我就配置了在虚拟网卡上也监听的 HTTP 代理,直接转到 Tor 上,这也没问题。

    所以分类什么的无所谓了,偏要说的话,是个致力于生存性的 VPN 。
    fishlee
        23
    fishlee  
       2015-11-06 08:11:51 +08:00 via Android
    点赞
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   981 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 20:03 · PVG 04:03 · LAX 12:03 · JFK 15:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.