gpt4 book ai didi

networking - 如何使用 'owned' 昵称实现 IRC 服务器?

转载 作者:行者123 更新时间:2023-12-01 12:34:26 25 4
gpt4 key购买 nike

最近,我一直在阅读 IRC 协议(protocol)(RFC 1459、2810-2813),我正在考虑实现我自己的服务器。

我不一定要虔诚地遵守 IRC 协议(protocol)(毕竟我这样做是为了好玩),但我喜欢它的一件事是网络可以透明地包含多个服务器。

关于协议(protocol)或 IRC 规范,有很多我不喜欢的地方。首先是昵称不被拥有。虽然存在像 NickServ 这样的服务,但它们不是官方协议(protocol)的一部分。另一方面,正确地实现像 NickServ 这样的东西会破坏分发的目的(即 NickServ 在一个地方运行,并且有一个数据存储) ).

我希望有一种方法可以在每个服务器的基础上管理昵称。这样做的问题是,如果您有两台服务器,它们都有一些注册的昵称,然后它们连接起来,就会发生冲突。

有没有办法在不使用一个中央数据存储的情况下避免这种情况?也就是说:是否有可能保持服务器松散连接(这样它们每个都作为一个独立的实体存在,但也可以相互连接)并保持昵称之间的唯一性?

我知道这个问题含糊不清,但我想不出更好的措辞方式。我正在寻找更多的建议,而不是实际的是/否答案。因此,如果有人对如何在网络中实现昵称唯一性同时仍保持服务器独立性有任何想法,我很想听听。请注意,完全没有必要严格遵守 IRC 协议(protocol);我可以根据自己的目的改变事物。 :)

最佳答案

有一个简单的解决方案如果您不关心严格实现 IRC 服务器,而是实现类似的分布式消息系统IRC,但不完全是 IRC。

简单的解决方案是使用“nick@host”形式的昵称,就像电子邮件一样。所以我的昵称不只是“mipadi”,而是“mipadi@free-memorys-server.net”。所以我只在你的服务器上注册,但是当你的服务器与其他服务器链接形成另一个大的 ole' 聊天网络时,你可以轻松地将所有用户名联合在一起。 otherserver.net 上可能有一个“mipadi”,但后来我们的昵称变成了“mipadi@free-memorys-server.net”和“mipadi@otherserver.net”,一切都很酷。

当然,这与 IRC 有很大的不同。 :)

关于networking - 如何使用 'owned' 昵称实现 IRC 服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/439987/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com