Một sự cố gần đây khiến tôi phải suy nghĩ lại về dịch vụ truy cập tên miền truyền thống. Chúng tôi luôn tin rằng dịch vụ giải quyết tên miền rất ổn định, nhưng đôi khi nó có vấn đề. Điều này khiến tôi tự hỏi liệu một giải pháp phi tập trung có phải là một giải pháp thay thế đáng để khám phá không?
Sau khi suy nghĩ về điều này, việc triển khai các trang trên blockchain có thể mang lại những lợi ích sau:
1. Phân quyền: Mọi thay đổi đều cần có sự đồng ý chung của mọi người và không một tổ chức nào có quyền quyết định cuối cùng.
2. Không cần chứng chỉ: Vì bản thân blockchain sử dụng công nghệ mã hóa nên không cần cấu hình chứng chỉ bổ sung.
Tôi đã từng thấy chương trình tên miền trên TON trước đây, và tôi nghĩ rằng nó chỉ là trò vui và không thực tế lắm vào thời điểm đó, sau cùng, phương pháp truy cập truyền thống đã rất ổn định và được sử dụng phổ biến. Nhưng bây giờ tôi nghĩ rằng nó thực sự có thể hữu ích, vì vậy tôi dự định sẽ nghiên cứu kỹ hơn.
Tạo một trang web trên blockchain
Bài viết này sẽ thử triển khai một trang web trong TON và cho phép người dùng truy cập trang này trong trình duyệt. Quá trình này được chia thành ba bước: 1. Mua tên miền; 2. Chuẩn bị trang front-end; 3. Liên kết trang với tên miền.
Khái niệm tên miền trong blockchain và trong thế giới WEB2 thực sự giống nhau. Cả hai đều là bí danh cho một địa chỉ phức tạp và khó nhớ. Trong blockchain, chúng đại diện cho địa chỉ của người dùng và trong WEB2, chúng đại diện cho địa chỉ IP của dịch vụ.
Mua tên miền
Lấy TON làm ví dụ, địa chỉ mua tên miền chính thức là https://dns.ton.org/ và giá được tính bằng TON. Giống như WEB2, ký tự càng ngắn thì tên miền càng đắt, dao động từ 1 đến 100 TON.
Nếu tên miền không thuộc sở hữu của bất kỳ ai, bạn có thể đấu giá ở mức giá thấp và sau khi đấu giá, sẽ bắt đầu đếm ngược. Trong quá trình đếm ngược, mọi người đều có thể đấu giá cho đến khi đếm ngược kết thúc. Sau khi tên miền được đấu giá, tên miền sẽ được lưu trữ trong ví của người dùng dưới dạng NFT. Tên miền NFT có thể được giao dịch. Tên miền có hiệu lực trong 1 năm và sẽ được thu hồi sau khi hết hạn.
Tóm lại, bạn có thể mua tên miền thông qua đấu giá trên trang web chính thức hoặc có thể trao đổi nó từ những người dùng khác.
Chuẩn bị trang front-end
Ở bước này, bạn cần chuẩn bị một trang front-end để hiển thị. Để đơn giản, bài viết này chỉ chuẩn bị một tệp HTML cộng với nginx để hiển thị trang. Tất nhiên, dự án cũng cần một máy chủ đám mây để chạy trang front-end. Bước này giống như triển khai ứng dụng front-end truyền thống.
Liên kết trang với .ton
Sau khi bạn có tên miền .ton, bạn có thể liên kết địa chỉ ANDL của mình trên trang web chính thức của TON DNS. Tất nhiên, bạn cũng có thể sử dụng công cụ liên kết do TON cung cấp và làm theo hướng dẫn trên trang web chính thức để liên kết trang của bạn.
Sau khi liên kết hoàn tất, bạn cũng cần khởi động một cổng lắng nghe trên máy chủ để lắng nghe các yêu cầu http và chuyển tiếp chúng đến udp. Tại đây, bạn có thể sử dụng công cụ rldp-http-proxy chính thức và khởi động nó bằng cách nhập lệnh sau:
rldp-http-proxy/rldp-http-proxy -p 8080 -c 3333 -C global.config.json
Trong đó 8080 là cổng TCP sẽ lắng nghe các truy vấn HTTP đến trên máy chủ cục bộ và 3333 là cổng UDP sẽ được sử dụng cho mọi hoạt động RLDP và ADNL đi và đến (tức là kết nối với trang web TON thông qua mạng TON). global.config.json là tên tệp của cấu hình toàn cầu TON, có thể tải xuống tại đây .
Truy cập tên miền .ton
Cố gắng truy cập trang web bằng cách nhập trực tiếp tên miền .ton vào trình duyệt sẽ không hiệu quả, vì trình duyệt không biết nơi phân giải tên miền. Vì vậy, cần phải thực hiện một số thao tác bổ sung ở đây.
Quá trình yêu cầu .ton
Khi yêu cầu tên miền .ton, địa chỉ ANDL tương ứng sẽ được truy vấn trên chuỗi trước. Địa chỉ này có thể hiểu đơn giản là địa chỉ IP trong WEB2, sẽ được tự động tạo ra khi bạn triển khai trang web. Quá trình truy vấn này cũng có thể được so sánh với quá trình truy vấn DNS.
Sau đó, theo địa chỉ ANDL, yêu cầu sẽ được chuyển tiếp đến máy tương ứng của bạn và bạn có thể chỉ định trang trả về tương ứng. Toàn bộ quá trình khá giống với WEB2, điểm khác biệt chính là phương pháp truy vấn ánh xạ địa chỉ và tên miền khác nhau.
Truy cập trang thông qua proxy
Cách được khuyến nghị nhất là sử dụng công cụ proxy Tonutils Reverse Proxy do trang web chính thức cung cấp. Sau khi tải xuống và cài đặt, một cổng 8080 sẽ được khởi động cho proxy và sau đó bạn có thể truy cập tên miền .ton.
Bạn có thể thấy rằng bạn có thể truy cập các trang web có tên miền .ton.
Tóm tắt sử dụng
Hiện tại, đã gặp phải các vấn đề sau:
Có những yêu cầu đối với môi trường mà trang web chạy. Hệ thống của bạn cần hỗ trợ glibc phiên bản 2.34 trở lên, vì vậy trước khi triển khai trang, hãy kiểm tra xem máy của bạn có đáp ứng các yêu cầu không.
Tài liệu không rõ ràng lắm. Có thể là do nhu cầu về TON này để chạy trang web không nhiều nên tài liệu không đầy đủ và bạn cần tự tìm hiểu. Ngoài ra, phiên bản tiếng Trung không được cập nhật kịp thời và chậm hơn phiên bản tiếng Anh.
Tốc độ truy cập chậm. Tốc độ truy cập chậm hơn so với các trang web truyền thống. Tất nhiên, có nhiều yếu tố liên quan và chúng tôi chỉ có thể nói rằng có nhiều chỗ để cải thiện trong tương lai.
Nó không được ví hỗ trợ. Trang web chính thức cung cấp một trang trình duyệt nhúng đơn giản, bạn có thể chọn truy cập mà không cần cài đặt proxy. Tuy nhiên, trang web này hiện được tất cả các ví chính thống xác định là trang web lừa đảo.
Nhìn chung, trải nghiệm hiện tại thực sự ở mức trung bình, vẫn còn nhiều điểm có thể cải thiện trong tương lai, nhưng tôi nghĩ hướng đi này rất tốt và sáng tạo, đáng để thử.