Suite à divers échange avec @elois j’ai développé un petit script python qui check les end points des nœuds du réseau. dispo ici : github
Les tests sont fais sur tous les nœuds connus. Le script essaye de récupérer la listes des end points ws2p depuis un end point BMA ou BMAS du nœud.
De temps en temps le script renvoi une erreur ‹ Received message 8:1000 is not str › je ne sais pas ce que c’est, ça fonctionne quand je test manuellement je n’ai donc pas ajouté les end points dans ce cas.
Voici les premiers résultats, il y a peut-être des erreurs, n’hésitez pas à me remonter les infos :
@cgeek : [cgeek] Cédric Moreau - 2ny7YAdmzReQxAayyJZsyVYwYhVyax2thKcGknmQy5nQ WS2P e3f8af5f 82.65.206.220 20900: Cannot connect to host 82.65.206.220:20900 ssl:default [Le système distant a refusé la connexion réseau] : WS2P e3f8af5f 82.65.206.220 20900
unknown - 74RBUM4VkhZU4PLJcf8ok9snKjXTX6aP52PdGcCM1meA BMAS monit.g1.nordstrom.duniter.org 443 /bma: unable to retrieved WS2P endpoint: BASIC_MERKLED_API 127.0.0.1 80: unable to retrieved WS2P endpoint: Cannot connect to host 127.0.0.1:80 ssl:default [Le système distant a refusé la connexion réseau]
@ThomasBourdon : Bourdon, Thomas - Abpio1ZPLuuULtu9JadJ5SeuwkP9puEVYJVADhK3f1yE BASIC_MERKLED_API g1.halpanet.org 10900: unable to retrieved WS2P endpoint:
@Moul : Moul - GfKERHnJTYzKhKUma5h1uWhetbA8yHKymhVH2raf2aCP BASIC_MERKLED_API 127.0.0.1 10901: unable to retrieved WS2P endpoint: Cannot connect to host 127.0.0.1:10901 ssl:default [Le système distant a refusé la connexion réseau] WS2P 4eabaa9c nuc.moul.re 10900: Cannot connect to host nuc.moul.re:10900 ssl:default [Le système distant a refusé la connexion réseau] : WS2P 4eabaa9c nuc.moul.re 10900
@shepeng : Donnadieu, Jean-Luc - BDv28pi7c1GCbfZqcdEdXuMwubTjswepR1mAZW7YS9vt WS2P 7f777906 82.64.191.57 20900: Cannot connect to host 82.64.191.57:20900 ssl:default [Le système distant a refusé la connexion réseau] : WS2P 7f777906 82.64.191.57 20900
@jytou : Toumit Jean-Yves - FEkbc4BfJukSWnCU6Hed6dgwwTuPFTVdgz5LpL4iHr9J BASIC_MERKLED_API g1a.jytou.fr 9002: unable to retrieved WS2P endpoint, value error: status code != 200 => 400
→ répond en ssl sur le port BMA
@solian : Solian Jim - AZ8pZx2QJ6YExVdKL5mPs6DaAZWBNPQBueytVFGZAWSZ BASIC_MERKLED_API oniromorphe.eu 88.122.148.74 2a01:e0a:4a5:1280:81b0:567b:342a:1fe0 64222: unable to retrieved WS2P endpoint:
@Tchois : Tchois Même - 4agK3ycEQNahuRGoFJDXA2aQGt4iV2YSMPKcoMeR6ZfA BASIC_MERKLED_API 88.161.154.188 78.197.143.10 2a01:e0a:866:af30:4957:ccf8:d5e9:4755 20900: unable to retrieved WS2P endpoint:
Vincent EJXX8E - EJXX8EgTfVVxV3T9EXfizS4Jkexn9o689gmX8yEfDAeQ BASIC_MERKLED_API 192.168.0.14 20900: unable to retrieved WS2P endpoint:
Les bugs ne sont pas exclus. Mais j’ai testé manuellement tout ce que j’ai mis ici pour éviter les blagues.
Je suis certain d’avoir testé car j’ai été surpris par le path /bma. J’étais au boulot donc ça exclu les blagues de mon réseau. Et je viens de tester en 4G j’ai un timeout en cliquant directement sur ton lien.
Il expose aussi bma sur du localhost a priori. Mais je ne peux vérifier la.
Je suis au courant pour ces points d’accès. Je les utilise en local, et Duniter les rajoute et les partage après que je les ai supprimés. Je vois pas ce que je peux faire de plus que de partager des points d’accès non accessibles sur Internet. Duniter pourrait proposer de ne pas partager les points d’accès locaux.
Il répond bien chez moi, mais en 4G chez Bouygues il veux toujours pas, bizarre
Et sinon le nœud expose bien BMA en localhost sur le port 80. @Moul à l’air d’avoir le même besoin.
La je crois que t’es marron, les endpoints liés à la configuration direct sont automatiquement partagés et tu ne peux pas les enlever.
Je te rejoins, il faut garder la possibilité de pouvoir binder sur des ips privés et du localhost, mais il faudrait pouvoir choisir de l’annoncer ou pas.
Je vais regarder ça à l’occasion, mais il faut changer la logique du coup, à la base c’était pour tester les end points ws2p donc je ne test pas tous les autres. Et aussi intégrer GVA tant qu’on y est.
Je verrai bien aussi la possibilité de tester les end points spécifiques d’un seul nœud.
Super !
Est-ce que tu génères une liste de nœuds en demandant tt les nœuds connu d’une liste bootstrap ?
Est-ce que tu itères cette requête à plusieurs pas dans le réseau ? Combien ?
Est-ce que tu utilises GVA pour ça ?
Tu pourras nous partager l’ensemble de tes résultats une fois ce fameux test fini ?
Je ne sais pas si c’est toi qui avait utilisé DuniterPy pour tes premiers tests. Mais voilà un outil intéressant pour le toolkit DuniterPy. Qui pourra ensuite être intégré profiter à Silkaj et Tikka et d’autres clients python (Jaklis ?).
Je récupère la vue réseau du nœud spécifié dans la config puis j’itère sur chaque nœud connu.
Pour chaque nœud connu, j’itère sur chaque BMA ou BMAS jusqu’à ce que j’arrive à récupérer le end point WS2P. Et la je test de me connecter + handshake.
(C’est quoi une liste bootstrap, je ne connais que le framework web de ce nom)
Je me suis basé sur les exemples de duniterpy ne connaissant pas du tout la lib.
Non, je ne rentre pas en profondeur dans le réseau. J’utilise juste la vue du nœud de base configuré
Non, mais du coup il faudrait pour être complet.
Tout est plus ou moins dans le premier post, tu voudrais quoi exactement ?
Non, c’est ma première utilisation de DuniterPy.
C’est effectivement plus judicieux d’intégrer la fonctionnalité dans DuniterPy au moins ca profite à tout le monde.
C’est juste ce que tu fais, les noeuds “bootstrap” c’est la liste de noeud de départ sur laquelle tu te bases
Ce n’est pas pour être complet, mais plutot pour être à jour, GVA remplace BMA, donc ça permet de tester GVA par la même occasion.
Elois va faire un poste prochainement pour demander a ce que plus de monde lance un noeud GVA, lorsque la v1.9 de Duniter sera gelé et testé, très bientôt
Il faudrait entre 10 et 15 noeud GVA pour commencer à s’amuser.