Page 1 sur 1
[R] Script de configuration de carte réseau
Posté : lun. 02 juin 2014 17:28
par Bzhandroid
Bonjour
J'ai plus de 500 serveur qui seront montés à l'identique, en utilisant Hyper-V.
Jusqu'a la pas de probleme.
J'aimerai automatiser la configuration du nom et adresse IP .. avec intégration au domaine par un script autoit en passant par une fenetre graphique où l'administrateur rentrerai le nom du serveur, son adresse IP, mask, passerelle, et DNS.
en image, voici l'idée,
Le fichier joint Capture.PNG n’est plus disponible.
1 pour le nom de serveur
2 son adresse IP sous la forme XXX.XXX.XXX.XXX
3 son mask meme forme ecriture
4 sa passerelle idem
5 ses deux serveur DNS ( adresse IP) avec les "." dejà mis en place.
6 le bouton executer.
domaine : " domainerver.fr"
dans le script une variable login pour compte d'admin, et mdp pour mot de passe, rentrer en dur dans le script.
je vous remercie d'avance pour celui qui pourra m'apporter de l'aide.
Re: [] script de configuration de serveur
Posté : lun. 02 juin 2014 17:59
par blacksoul305
Salut,
tu devrais éditer le titre de ton premier message en remplaçant "[]" par "[..]"
En ce qui concerne le code, si la fenêtre n'est pas typée Interface Flash, tu peux très facilement utiliser les commandes de type "Control" (cf: ControlClick pour les boutons et ControlSend pour les Input).
Je te propose une structure de code que tu devras très certainement adapter puisque certains termes m'échappent.
Code : Tout sélectionner
Global $login = "login", $password = "motdepasse"
Global $GUIName = "nom de la fenêtre", $serverNameInputID = "ID du contrôle de l'input correspondante", $IPAdressInputID = "pareil", $ServerMask = "idem", $gateway = "input de la passerelle", $DNSIPInputIP = "...", $ExecuteButtonID = "..."
; Tu dois récupérer l'ID de chaque contrôle à l'aide de l'utilitaire AutoItWindowInfo
ControlSetText($GUIName,"",$serverNameInputID,"Nom du serveur") ; input
etc...
ControlClick($GUIName,"",$ExecuteButtonID,"left") ; bouton
C'est assez propre et efficace. Manque plus qu'à compléter.
Bonne continuation !
Re: [..] Script de configuration de serveur
Posté : lun. 02 juin 2014 22:38
par Bzhandroid
merci, je teste ça demain.
Je te remercie et te tiens au courant.
Re: [..] Script de configuration de serveur
Posté : mar. 03 juin 2014 15:05
par Bzhandroid
Slt
J'ai un peu avancer, j'ai utilisé le network.au3
voici mon code
► Afficher le texte
Code : Tout sélectionner
#Include <array.au3> ; uniquement pour _ArrayDisplay()
#Include "network.au3"
;~ #include <ButtonConstants.au3>
;~ #include <ComboConstants.au3>
;~ #include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiIPAddress.au3>
;~ #include <StaticConstants.au3>
;~ #include <WindowsConstants.au3>
$Form1_1 = GUICreate("Configuration du serveur", 726, 231, 192, 124)
;~ $IPserver1 = GUICtrlCreateLabel("Veuillez rentrer l'adresse IP du Serveur :", 3, 18, 182, 17)
$sIPAddress = _GUICtrlIpAddress_Create($Form1_1, 3, 32, 185, 25)
_GUICtrlIpAddress_Set($sIPAddress, "0.0.0.0")
;~ $IPMask1 = GUICtrlCreateLabel("Veuillez saisir le masque réseau :", 3, 58, 182, 17)
$sSubnetMask = _GUICtrlIpAddress_Create($Form1_1, 3, 72, 185, 25)
_GUICtrlIpAddress_Set($sSubnetMask, "0.0.0.0")
;~ $IPpasserelle1 = GUICtrlCreateLabel("Veuillez saisir l'IP de la passerelle:", 3, 98, 182, 17)
$adapterName = _GUICtrlIpAddress_Create($Form1_1, 3, 112, 185, 25)
_GUICtrlIpAddress_Set($adapterName, "0.0.0.0")
$btnValider = GUICtrlCreateButton("Valider", 488, 176, 89, 33)
$btnQuitter = GUICtrlCreateButton("Quitter", 608, 176, 89, 33)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $btnQuitter
Exit
Case $btnValider
; Configurer l'adresse IP manuellement
_EnableStatic("Intel(R) 82579LM Gigabit Network Connection", $sIPAddress, $sSubnetMask)
; Configurer la passerelle par défaut
_SetGateways("Intel(R) 82579LM Gigabit Network Connection", $adapterName)
; Configuration des serveurs DNS
;~ Local $DNS_SERVERS[2] = [ $dns1, $dns2 ]
;~ _SetDNSServerSearchOrder("Connexion au réseau local", $DNS_SERVERS)
; Configurer le domaine DNS
_SetDNSDomain ("Intel(R) 82579LM Gigabit Network Connection", "TST-CPT")
Exit
EndSwitch
WEnd
Exit
j'ai deux soucis, le premier
dans la le "NETWORK.au3, il y a la variable $sNetAdapter, d'après ce que j'ai compris c'est le nom de la carte rso, est ce bien cela.
Sinon je n'ai pas d'enregistrement fait lorsque j'appuie sur la touche valider, pourquoi??
Re: [..] Script de configuration de serveur
Posté : mar. 03 juin 2014 15:55
par jguinch
$sNetAdapter peut être soit le nom de la carte (Intel(R) 82579LM Gigabit Network Connection), soit le nom de connexion réseau (Connexion au réseau local):
$sNetAdapter - Name of the network adapter.
; The Windows network connection name can be used instead of network adapter.
Re: [..] Script de configuration de serveur
Posté : mar. 03 juin 2014 16:20
par Bzhandroid
J'ai vu ça pour le nom du réseau. Merci
Pour mes données ip, etc il ne garde pas en mémoire les adresses que je lui rentre, faut il que je mette ces variables en "global "
Car si je les rentre en dur, ça marche parfaitement bien
Re: [..] Script de configuration de serveur
Posté : mar. 03 juin 2014 16:38
par jguinch
Dans ton script, $sIPAddress correspond au handle du champ IP, pas à la valeur. Regarde la doc pour trouver comment lire la valeur d'un champ IP
Re: [..] Script de configuration de serveur
Posté : mar. 03 juin 2014 17:22
par Bzhandroid
je comprends
mais quand sur la ligne
Code : Tout sélectionner
_EnableStatic("Connexion au réseau local", $sIPAddress, $sSubnetMask)
je remplace $sIPAddress par une adresse IP, lorsque je clique sur valider, il me prends bien en compte cette valeur dans la carte reseau
J'ai trouvé la solution, merci de ton aide
► Afficher le texte
Code : Tout sélectionner
#Include <array.au3> ; uniquement pour _ArrayDisplay()
#Include "network.au3"
;~ #include <ButtonConstants.au3>
;~ #include <ComboConstants.au3>
;~ #include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiIPAddress.au3>
;~ #include <StaticConstants.au3>
;~ #include <WindowsConstants.au3>
Global $sIPAddress1, $sSubnetMask1,$adapterName1
$Form1_1 = GUICreate("Configuration du serveur", 726, 231, 192, 124)
;~ $IPserver1 = GUICtrlCreateLabel("Veuillez rentrer l'adresse IP du Serveur :", 3, 18, 182, 17)
$sIPAddress1 = _GUICtrlIpAddress_Create($Form1_1, 3, 32, 185, 25)
_GUICtrlIpAddress_Set($sIPAddress1, "0.0.0.0")
;~ $IPMask1 = GUICtrlCreateLabel("Veuillez saisir le masque réseau :", 3, 58, 182, 17)
$sSubnetMask1 = _GUICtrlIpAddress_Create($Form1_1, 3, 72, 185, 25)
_GUICtrlIpAddress_Set($sSubnetMask1, "0.0.0.0")
;~ $IPpasserelle1 = GUICtrlCreateLabel("Veuillez saisir l'IP de la passerelle:", 3, 98, 182, 17)
$adapterName1 = _GUICtrlIpAddress_Create($Form1_1, 3, 112, 185, 25)
_GUICtrlIpAddress_Set($adapterName1, "0.0.0.0")
$btnValider = GUICtrlCreateButton("Valider", 488, 176, 89, 33)
$btnQuitter = GUICtrlCreateButton("Quitter", 608, 176, 89, 33)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $btnQuitter
Exit
Case $btnValider
;~ MsgBox(4160, "Information", "IP Address: " & _GUICtrlIpAddress_Get($sIPAddress1))
;~ MsgBox(4160, "Information", "pasere : " & _GUICtrlIpAddress_Get($adapterName1))
;~ MsgBox(4160, "Information", "mask: " & _GUICtrlIpAddress_Get($sSubnetMask1))
; Configurer l'adresse IP manuellement
_EnableStatic("Connexion au réseau local", _GUICtrlIpAddress_Get($sIPAddress1), _GUICtrlIpAddress_Get($sSubnetMask1))
; Configurer la passerelle par défaut
_SetGateways("Connexion au réseau local",_GUICtrlIpAddress_Get($adapterName1))
; Configuration des serveurs DNS
;~ Local $DNS_SERVERS[2] = [ $dns1, $dns2 ]
;~ _SetDNSServerSearchOrder("Connexion au réseau local", $DNS_SERVERS)
; Configurer le domaine DNS
_SetDNSDomain ("Connexion au réseau local", "domain")
Exit
EndSwitch
WEnd
Exit
Re: [R] Script de configuration de carte réseau
Posté : mer. 04 juin 2014 00:12
par jguinch
N'oublie pas #RequireAdmin en début de script, au cas où...
Si c'est résolu, pas le sujet en [R]