apply updates

This commit is contained in:
ps 2026-03-31 17:19:01 +03:00
parent e632b695ff
commit d94a6797fa

View file

@ -3,13 +3,14 @@
Будучи користувачем мережі Yggdrasil і Agate (github.com/mbrubeck/agate) як єдиної більш-менш адекватної реалізації сервера Gemini protocol на Rust, ніяк не придумаю як обійти відсутність в ньому резольву хостів без DNS, що є наслідком політики rustls і RFC 6066 зокрема: Будучи користувачем мережі Yggdrasil і Agate (github.com/mbrubeck/agate) як єдиної більш-менш адекватної реалізації сервера Gemini protocol на Rust, ніяк не придумаю як обійти відсутність в ньому резольву хостів без DNS, що є наслідком політики rustls і RFC 6066 зокрема:
=> https://www.datensen.com/blog/support/setting-the-tls-servername-to-an-ip-address-is-not-permitted/ Deprecation Warning: Setting the TLS ServerName to an IP address is not permitted by RFC 6066 => https://www.datensen.com/blog/support/setting-the-tls-servername-to-an-ip-address-is-not-permitted/ Deprecation Warning: Setting the TLS ServerName to an IP address is not permitted by RFC 6066
Враховуючи свій досвід, і підтримку міксованих CN в Lagrange (див. сертифікат gemini://bbs.geminispace.org) вирішив зробити просто заглушку на випадок, якщо SNI не було розпізнано: Враховуючи свій досвід і підтримку міксованих CN в Lagrange (див. сертифікат gemini://bbs.geminispace.org) вирішив зробити просто заглушку на випадок, якщо SNI не було розпізнано:
=> https://github.com/mbrubeck/agate/pull/433 => https://github.com/mbrubeck/agate/pull/433
Щоб це спрацювало, в корені теки `.certificates` повинен бути розташований сертифікат за замовчуванням, тобто такий, що використовуватиметься у разі, якщо резольвер не знайшов жодного співпадіння в реєстрі сертифікатів і значення хосту було порожнім (при використанні IPv4 і IPv6 / Yggdrasil зокрема) Щоб це спрацювало, в корені теки `.certificates` повинен бути розташований сертифікат за замовчуванням, тобто такий, що використовуватиметься у разі, якщо резольвер не знайшов жодного співпадіння в реєстрі сертифікатів і значення хосту було порожнім (при використанні IPv4 і IPv6 / Yggdrasil зокрема)
Ще не встиг перевірити обнову, але думаю вона невдовзі буде доступна тут: Ще не встиг перевірити обнову, але думаю вона невдовзі буде доступна тут:
=> gemini://[202:68d0:f0d5:b88d:1d1a:555e:2f6b:3148 gemini://ps.ygg, від майнингу якого я планую відмовитись з причин енерго-заощадження => gemini://[202:68d0:f0d5:b88d:1d1a:555e:2f6b:3148] Yggdrasil (AAAA gemini://ps.ygg)
=> gemini://[505:6847:c778:61a1:5c6d:e802:d291:8191] Mycelium (CN=ps.ygg)
Нагадаю, що фічу DNS-less резольву з коробки підтримує сервер gmid, написаний на Clang: Нагадаю, що фічу DNS-less резольву з коробки підтримує сервер gmid, написаний на Clang:
=> gmid-server-for-gemini-protocol.gmi Gmid - багатофункціональний сервер для Gemini => gmid-server-for-gemini-protocol.gmi Gmid - багатофункціональний сервер для Gemini
@ -22,4 +23,5 @@
=> agate-virtual-host-usage-examples.gmi Специфіка роботи з віртуальними хостами Agate => agate-virtual-host-usage-examples.gmi Специфіка роботи з віртуальними хостами Agate
=> meshname-as-permanent-and-green-alternative-to-dns.gmi Meshname як перманентна, енерго-ефективна альтернатива DNS => meshname-as-permanent-and-green-alternative-to-dns.gmi Meshname як перманентна, енерго-ефективна альтернатива DNS
=> alfis-dns-domain-registration-in-blockchain.gmi Alfis DNS - реєстрація домену в блокчейн => alfis-dns-domain-registration-in-blockchain.gmi Alfis DNS - реєстрація домену в блокчейн
=> mirrors.gmi Список офіційних дзеркал цього блогу