V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
这是一个专门讨论 idea 的地方。

每个人的时间,资源是有限的,有的时候你或许能够想到很多 idea,但是由于现实的限制,却并不是所有的 idea 都能够成为现实。

那这个时候,不妨可以把那些 idea 分享出来,启发别人。
shadowyue
V2EX  ›  奇思妙想

现有的技术,能否实现仅仅通过网络,无需服务器的通讯?

  •  1
     
  •   shadowyue · 2018-12-12 10:20:03 +08:00 · 7874 次点击
    这是一个创建于 2198 天前的主题,其中的信息可能已经有所发展或是发生改变。

    简单来说,能不能不需要企鹅的服务器,我直接就和别人网络通讯。 看新闻的时候想到的,要是 IPv6 普及了,我能不能直连别人,直接通讯呢? 这样数据安全隐私什么的,也更加有保障了。

    54 条回复    2019-09-04 10:44:54 +08:00
    virusdefender
        1
    virusdefender  
       2018-12-12 10:22:43 +08:00
    直连可以吧,你还可以通过卫星、蓝牙、无线电各种方法实现。。

    经过别人的服务器不代表不安全,参考 tls
    sarices
        2
    sarices  
       2018-12-12 10:26:47 +08:00
    FireChat 了解一下
    Ediacaran
        3
    Ediacaran  
       2018-12-12 10:29:05 +08:00
    即使能直连,互相发现至少需要个目录服务器吧
    skschema
        4
    skschema  
       2018-12-12 10:34:16 +08:00
    自己架的聊天也算是有服务器吧。看你自己对服务器怎么定义了。
    fengci
        5
    fengci  
       2018-12-12 10:34:33 +08:00
    说的不就是 P2P 嘛。
    sobigfish
        6
    sobigfish  
       2018-12-12 10:43:03 +08:00
    qq 前期就有直连的时候,估计后来发现这么不好备份 /同步聊天记录 (监控?) 就全走服务器了
    ronman
        7
    ronman  
       2018-12-12 10:44:51 +08:00 via Android
    意思是不经过中央服务器吧,tox 了解一下
    wysnylc
        8
    wysnylc  
       2018-12-12 10:54:57 +08:00
    手机一样是服务器
    580a388da131
        9
    580a388da131  
       2018-12-12 10:56:29 +08:00 via iPhone
    你说的就是点对点
    但你怎么保证线路是安全的
    dorothyREN
        10
    dorothyREN  
       2018-12-12 11:37:06 +08:00
    那么 你不广播一下的话 别人不知道你上线了,你要是广播的话,那就厉害了,全网广播。
    SPACELAN
        11
    SPACELAN  
       2018-12-12 11:52:12 +08:00
    libp2p 适合干这事儿
    nisnaker
        12
    nisnaker  
       2018-12-12 11:53:11 +08:00
    飞秋?
    RqPS6rhmP3Nyn3Tm
        13
    RqPS6rhmP3Nyn3Tm  
       2018-12-12 12:20:06 +08:00 via iPhone
    发个 nonce 握手几次鉴定不就好了吗,密码学入门
    feverzsj
        14
    feverzsj  
       2018-12-12 12:21:00 +08:00
    你可以用 vhf 组网
    RqPS6rhmP3Nyn3Tm
        15
    RqPS6rhmP3Nyn3Tm  
       2018-12-12 12:21:12 +08:00 via iPhone
    点对点通信不能防止 eavesdrop
    Zzdex
        16
    Zzdex  
       2018-12-12 12:28:58 +08:00 via iPhone
    可以但是对面如何发现你呢
    yidinghe
        17
    yidinghe  
       2018-12-12 12:31:35 +08:00 via Android
    楼主的这个概念有一个名词叫去中心化网络。
    DOLLOR
        18
    DOLLOR  
       2018-12-12 12:35:24 +08:00 via Android
    即使没听过去中心化,也该知道最近火的区块链、加密货币吧
    lr3800
        19
    lr3800  
       2018-12-12 12:37:15 +08:00
    https://tox.chat tox 已经实现了
    tadtung
        20
    tadtung  
       2018-12-12 12:42:40 +08:00 via Android
    可以啊,基于 p2p 就行。但是你的部分核心东西还是要部署在服务器上的。你最多做到通信数据不经过中央服务器罢了。
    另外想真正通信安全,自建就行。
    虽然我自己也建了,也偶尔有朋友用,但是周边朋友还是都用微信。
    hst001
        21
    hst001  
       2018-12-12 13:05:12 +08:00
    这个问题的重点两个人如何不经过第三方就能连上?除非固定 IP,这样一来安全性和隐私就没了
    shadowyue
        22
    shadowyue  
    OP
       2018-12-12 13:29:15 +08:00
    看起来通讯这个功能是没问题,但是难在如何去找到对方吧?

    比如我想给某个人发消息,我怎么去找到这个人呢?

    用企鹅,服务器有好友列表。如果去中心化,好友列表在本地。

    可能没过一天,这个人就换个方式或者设备上网,就找不到这个人了吧?

    能不能像上网一样,每个人有个固定的域名,去找这个人呢
    liwl
        23
    liwl  
       2018-12-12 13:51:14 +08:00
    所以,telegram 现在是什么个架构
    grewer
        24
    grewer  
       2018-12-12 14:19:24 +08:00
    人人不用服务器,其实人人都是服务器
    easylee
        25
    easylee  
       2018-12-12 14:20:08 +08:00 via Android
    飞秋
    shadowyue
        26
    shadowyue  
    OP
       2018-12-12 14:32:51 +08:00
    飞秋不是只能局域网吗
    f2ck
        27
    f2ck  
       2018-12-12 14:37:58 +08:00 via iPhone
    区块链技术了解下
    kimqcn
        28
    kimqcn  
       2018-12-12 14:50:37 +08:00
    其实网络都可以不用滴,吼~
    hoyixi
        29
    hoyixi  
       2018-12-12 15:40:10 +08:00
    去中心化的点对点通讯,解决方案和产品多了去了。

    但是在我国这种玩意肯定是不被允许的
    zhiyul
        30
    zhiyul  
       2018-12-12 15:54:26 +08:00
    webRTC ?
    C2G
        31
    C2G  
       2018-12-12 16:15:38 +08:00 via Android
    @shadowyue 固定域名 ddns 了解下?用于 ipv6 的 ddns
    bomb77
        32
    bomb77  
       2018-12-12 17:39:48 +08:00
    nc -l 1234 逃)
    yuhhai
        33
    yuhhai  
       2018-12-12 17:53:35 +08:00 via Android
    不就是 p2p 吗
    libook
        34
    libook  
       2018-12-12 18:26:21 +08:00
    实际上是先有的直连通讯软件,才有的服务器集中管理的通讯软件的,IPV4 时代因为 IP 地址不够等各种原因,大量使用 NAT 技术,两个不同子网内的计算机无法直接通信,服务器可以作为两者都能直接访问到的中介,来实现内网穿透技术(打洞或者中转)。
    如果 IPV6 普及的时候 NAT 被拿掉的话,你拿一本 Java 教程翻到 Socket 章节照着书敲几十行代码就能实现一个直连聊天的程序。
    publicvoid
        35
    publicvoid  
       2018-12-12 18:37:01 +08:00
    主要还是 ip 问题,ip 不固定,永远别想甩开服务器
    testcaoy7
        36
    testcaoy7  
       2018-12-12 19:59:35 +08:00
    端到端加密的聊天软件而已。一直有,比如 GNU Ring 和 Tox
    MoHen9
        37
    MoHen9  
       2018-12-12 20:44:29 +08:00 via Android
    你是指飞 Q 那种吗?
    maemolee
        38
    maemolee  
       2018-12-12 21:40:22 +08:00
    Zero Net ?
    EIJAM
        39
    EIJAM  
       2018-12-12 22:50:04 +08:00 via Android
    想起以前的 ipmsg
    ljpCN
        40
    ljpCN  
       2018-12-13 00:38:50 +08:00 via Android
    不就是 p2p 即时通讯吗,局域网有飞秋啊,我本科舍友毕设就是做了个 p2p 聊天工具
    ronman
        41
    ronman  
       2018-12-13 01:03:50 +08:00 via Android
    @shadowyue 大哥,大家都给你说好多现有的解决方案了,你去搜索一下就知道了呀
    NBOne
        42
    NBOne  
       2018-12-13 11:43:39 +08:00 via Android
    可以直连啊 通信双方都有独立的 ip 而且还要固定不变 就行啊
    dallaslu
        43
    dallaslu  
       2018-12-13 18:23:06 +08:00
    Berkanan / FireChat 了解一下
    YingJie
        44
    YingJie  
       2018-12-13 19:22:09 +08:00 via Android
    经过服务器不代表不安全,不经过服务器不代表安全。
    nowgoo
        45
    nowgoo  
       2018-12-14 10:44:07 +08:00
    我来歪个楼:发短信算不算?
    enjoyCoding
        46
    enjoyCoding  
       2018-12-14 12:31:05 +08:00 via iPhone
    技术上没问题 政策上不可能
    julyclyde
        47
    julyclyde  
       2018-12-14 12:51:08 +08:00
    可以倒是可以,但这和 ipv6 有啥关系?
    你这么问显得很外行
    flynaj
        48
    flynaj  
       2018-12-14 16:49:40 +08:00 via Android
    ipv6 直通其实是可以的。不过你还是需要知道对方 IP,服务器免不了
    mejee
        49
    mejee  
       2018-12-15 08:30:18 +08:00 via Android
    能不能直连还得看运营商兄弟的心情🤔
    Flance
        50
    Flance  
       2018-12-16 10:03:59 +08:00 via Android
    可以用 VPN 加密吖,大公司不都有这种实例吗
    greatbody
        51
    greatbody  
       2018-12-16 15:51:03 +08:00
    网络传输数据依赖的是各种协议,而你的方案需要基于一个现有的协议才行。

    否则在现有的设备上大量安装你的自定义协议也不现实。当然,如果你能做到,那就牛了。

    之前有考虑过这个如何做(原谅我技术有限),但是一想到路由器可能会丢掉没有明确目的地的包,就觉得很纠结。毕竟网络上的包太多了,如果没有目的地,那么网上就会出现数据风暴。无数的包在互谅网上来回的撞,最终互联网爆掉。

    我记的看到过的一个说法:发出的一个数据包会有一个初始计数,每经过一次转发路由器就会将这个数减一,直到最终这个包被丢弃。

    如果你想传播一个包,你就需要有一个目的地址,而这个目的地址如果被打掉了,那么就等于你的方案失效了。
    dianso
        52
    dianso  
       2018-12-20 18:33:08 +08:00 via Android
    telegram 就是
    fandui
        53
    fandui  
       2019-03-27 23:26:57 +08:00 via Android
    @ljpCN 可以请你室友跟我分享一下 p2p 聊天工具的开发流程吗,最近也在做这个,一点思路也没有。。
    wslzy007
        54
    wslzy007  
       2019-09-04 10:44:54 +08:00
    别逗了,有一种东西叫防火墙,ipv6 网络环境下也需要进行防火墙穿透的。什么?关闭防火墙,别逗了。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3428 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 10:53 · PVG 18:53 · LAX 02:53 · JFK 05:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.