Codync
免费开源的 1:1 Grok Bot 与 Muse 替代方案。可在 iPhone、Mac 或 Linux 桌面上将 Claude 代码、Codex、Cursor 以及 40 多个编码代理作为持久机器人使用。支持群组聊天、线程、应用。
AI 翻译
尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗STUN for Java
STUN (RFC 8489 / 5389, Binding over UDP) client, server and classic NAT type discovery (RFC 3489 algorithm with RFC 5780 attributes).
try (DatagramSocket socket = new DatagramSocket()) {
StunClient client = new StunClient(socket);
// the reflexive address of this socket
InetSocketAddress mapped = client.bind(new InetSocketAddress("stun.example.com", 3478)).mappedAddress();
// OPEN_INTERNET, FULL_CONE, RESTRICTED_CONE, PORT_RESTRICTED_CONE, SYMMETRIC, SYMMETRIC_FIREWALL, UDP_BLOCKED
NatType type = client.discoverNatType(new InetSocketAddress("stun.example.com", 3478));
}
// primary 192.0.2.1:3478, alternate port 3479, alternate ip 192.0.2.2 (for CHANGE-REQUEST)
StunServer server = new StunServer(new InetSocketAddress("192.0.2.1", 3478), 3479, InetAddress.getByName("192.0.2.2")).start();
A server without an alternate ip answers "change ip" with 420, or delegates it to another server
by StunServer#setChangeIpRelay (the overlay network nodes relay to each other this way).
StunMessageTest ... RFC 5769 test vectorsNatTypeDiscoveryTest ... discovery against simulated NATs/firewalls (RFC 4787 mapping/filtering behaviors), uses 127.0.0.2IptablesFirewallTest ... discovery behind real iptables firewalls and SNAT, needs root
sudo mvn test -Dtest=IptablesFirewallTest -Dstun.iptables=true
image designed by @umjammer, drawn by nano banana