Network Tools | |
ldci | 12-Jul-2006/1:51:39+2:00 |
Bonjour à tous J'ai mis sur le site http://www.rebol.org/cgi-bin/cgiwrap/rebol/index.r, une série d'utilitaires réseau en rebol (interface, dns,finger,whois, netstat,ping, port scan) regroupés en un seul programme. Le tout a été écrit sous OSX et testé avec succès sur mon réseau avec une AOL Box. Amicalement François | |
coccinelle | 12-Jul-2006/9:04:20+2:00 |
Salut François, J'ai vu que ton script dépend de l'OS. C'est quelque chose que tu pourrais automatiser en testant la 4ème position de la version (system/version). Une petite fonction comme ceci pourrait faire l'affaire : os: does [ switch system/version/4 [ 3 ['Windows] 2 ['MacOSX] 4 ['Linux] 7 ['NetBSD] 9 ['OpenBSD] 10 ['SunSolaris] ] ] Marco. | |
coccinelle | 12-Jul-2006/9:16:58+2:00 |
Potentiellement il y a aussi un petit bug dans la fonction Get_Interfaces si le port 8000 est déjà ouvert. Fait simplement : cnx: open tcp:// sans préciser le port, çà marche aussi bien. Marco. | |
ldci | 12-Jul-2006/12:26:03+2:00 |
Salut Marco Merci pour les commentaires que je vais intégrer dans la version corrigée. Amicalement | |
Philippe | 13-Jul-2006/9:09:51+2:00 |
Salut François, Me voilà de retour de vacances ! Pour le bouton "Explore the Network", il est bloquant. Si l'exploration est en cours, le reste est coincé. Avec une tâche asynchrone ou "autrement threadée" (Bus )? | |
ldci | 13-Jul-2006/10:51+2:00 |
Salut Philippe Sous OSX ca marche très bien: 5 secondes pour explorer mon réseau Sous Windows (Vista en beta): 20 minutes !!! même si le timeout est à moins d'une seconde. J'ai essayé un read dns://async c'est plus rapide, mais toutes les machines du réseau n'apparaissent pas. l'idée de bus logiciel comme celle montrée à Carl est certainement la bonne du moins pour éviter le blocage. Je vais regarder ça. Par ailleurs, netstat s'effectue via un call et on devrait pouvoir implémenter directrement le protocole. J'ai essayé mais j'ai des erreurs. Voici le code si quelqu'un a une idée make root-protocol [ scheme: 'netstat port-id: 15 port-flags: system/standard/port-flags/direct copy: func [port/local line] [ buffer: system/words/copy [] while [not none? line: system/words/pick port 1] [append buffer line] return buffer ] if error? try [ net-utils/net-install netstat self 15 print "Netstat Protocol Loaded" ] [print "error"] ] host: system/network/host-address print read to-url rejoin ["netstat://" host] A + | |
ldci | 19-Jul-2006/11:45:18+2:00 |
Pour le pb du DNS, la vitesse dépend bien de l'OS et il n'y a rien à faire sous Winx, même en passant par mon idée de bus logiciel. On ne peut pas modifier le timeout par défaut et le read dns:// demande environ 5 sec par adresse. Sous OSX par de pb: réponse instantanée. | |
Philippe | 19-Jul-2006/16:21:21+2:00 |
François, J'ai vu sur la Lib : http://www.rebol.org/cgi-bin/cgiwrap/rebol/view-script.r?script=dig.r Peut-être qu'en chargeant ce scheme DNS et en jouant sur le system/schemes/dig/timeout ?? ===Philippe | |
DideC | 23-Jul-2006/0:39:54+2:00 |
Je fais des read DNS async dans delete-emails, ce qui me permet d'en lançer plusieurs simultannément. Peut-être une solution a ce problème ? | |
ldci | 24-Jul-2006/23:32:06+2:00 |
Le pb n'est pas de lancer simultanémént plusieurs read dns async. La réponse à la requête DNS (sync ou async) dépend avant tout de l'OS. Sous Mac OSX pas de pbs. Sous Windows (y compris Vista), temps de réponse très lent. En fait pour connaitre les machines actives sur le réseau, le mieux serait de passer par samba. Avis aux amateurs. Par ailleurs, je teste en ce moment la beta 1.2.1 de Zeta (ex BeOS). Quel dommage de ne pas avor une version de Rebol parfaite, car l'association des 2 serait grandiose. Amicalement | |
Login required to Post. |