Phát hành Yggdrasil 0.4, triển khai mạng riêng chạy trên internet

Bản phát hành triển khai tham chiếu của giao thức Yggdrasil 0.4 đã được xuất bản, cho phép bạn triển khai một mạng IPv6 riêng phi tập trung riêng biệt trên mạng toàn cầu thông thường, sử dụng mã hóa đầu cuối để bảo vệ tính bảo mật. Mọi ứng dụng hiện có hỗ trợ IPv6 đều có thể được sử dụng để hoạt động thông qua mạng Yggdrasil. Việc triển khai được viết bằng Go và được phân phối theo giấy phép LGPLv3. Các nền tảng Linux, Windows, macOS, FreeBSD, OpenBSD và Ubiquiti EdgeRouter đều được hỗ trợ.

Yggdrasil đang phát triển một khái niệm định tuyến mới để tạo ra một mạng phi tập trung toàn cầu, các nút trong đó có thể kết nối trực tiếp với nhau ở chế độ mạng lưới (ví dụ: qua Wi-Fi hoặc Bluetooth) hoặc tương tác qua các mạng IPv6 hoặc IPv4 hiện có (mạng trên đầu mạng). Một tính năng đặc biệt của Yggdrasil là tự tổ chức công việc mà không cần định cấu hình định tuyến rõ ràng - thông tin về các tuyến đường được tính toán dựa trên vị trí của nút trong mạng so với các nút khác. Các thiết bị được đánh địa chỉ qua địa chỉ IPv6 thông thường, địa chỉ này không thay đổi nếu nút di chuyển (Yggdrasil sử dụng dải địa chỉ không được sử dụng 0200::/7).

Toàn bộ mạng Yggdrasil không được xem như một tập hợp các mạng con riêng biệt mà là một cây bao trùm có cấu trúc duy nhất với một “gốc” và mỗi nút có một nút cha và một hoặc nhiều nút con. Cấu trúc cây như vậy cho phép bạn xây dựng tuyến đường đến nút đích, liên quan đến nút nguồn, sử dụng cơ chế “định vị”, xác định đường dẫn tối ưu đến nút từ gốc.

Thông tin về cây được phân phối giữa các nút và không được lưu trữ tập trung. Để trao đổi thông tin định tuyến, bảng băm phân tán (DHT) được sử dụng, qua đó một nút có thể truy xuất tất cả thông tin về tuyến đường đến một nút khác. Bản thân mạng chỉ cung cấp mã hóa đầu cuối (các nút chuyển tuyến không thể xác định nội dung), nhưng không cung cấp tính ẩn danh (khi được kết nối qua Internet, các đồng nghiệp thực hiện tương tác trực tiếp có thể xác định địa chỉ IP thực, do đó, để ẩn danh, nó là đề xuất kết nối các nút thông qua Tor hoặc I2P).

Cần lưu ý rằng mặc dù dự án đang ở giai đoạn phát triển alpha nhưng nó đã đủ ổn định để sử dụng hàng ngày nhưng không đảm bảo khả năng tương thích ngược giữa các bản phát hành. Đối với Yggdrasil 0.4, cộng đồng hỗ trợ một bộ dịch vụ, bao gồm nền tảng lưu trữ các bộ chứa Linux để lưu trữ trang web của họ, công cụ tìm kiếm YaCy, máy chủ truyền thông Matrix, máy chủ IRC, DNS, hệ thống VoIP, trình theo dõi BitTorrent, bản đồ điểm kết nối, cổng IPFS và proxy để truy cập mạng Tor, I2P và Clearnet.

Trong phiên bản mới:

  • Một sơ đồ định tuyến mới đã được triển khai không tương thích với các bản phát hành Yggdrasil trước đó.
  • Khi thiết lập kết nối TLS với máy chủ, liên kết khóa công khai (ghim khóa) sẽ được tham gia. Nếu không có ràng buộc nào ở kết nối, khóa kết quả sẽ được gán cho kết nối. Nếu một liên kết đã được thiết lập nhưng khóa không khớp với nó thì kết nối sẽ bị từ chối. TLS có ràng buộc khóa được định nghĩa là phương pháp được đề xuất để kết nối với các thiết bị ngang hàng.
  • Mã định tuyến và quản lý phiên đã được thiết kế lại và viết lại hoàn toàn, giúp tăng thông lượng và độ tin cậy, đặc biệt đối với các nút thường xuyên thay đổi các nút ngang hàng. Các phiên mật mã thực hiện luân chuyển khóa định kỳ. Đã thêm hỗ trợ cho Định tuyến nguồn, có thể được sử dụng để chuyển hướng lưu lượng IPv6 của người dùng. Kiến trúc bảng băm phân tán (DHT) được thiết kế lại và hỗ trợ thêm cho định tuyến dựa trên DHT. Việc thực hiện các thuật toán định tuyến đã được chuyển sang một thư viện riêng.
  • Địa chỉ IP IPv6 hiện được tạo từ khóa chung ed25519 thay vì hàm băm X25519 của chúng, điều này sẽ khiến tất cả IP nội bộ thay đổi khi chuyển sang bản phát hành Yggdrasil 0.4.
  • Cài đặt bổ sung đã được cung cấp để tìm kiếm các đồng nghiệp Multicast.

Nguồn: opennet.ru

Thêm một lời nhận xét