Identification du site de connexion avec Windows 2003 server - Infrastructures serveurs - Systèmes & Réseaux Pro
Marsh Posté le 25-04-2007 à 10:57:03
En plaçant simplement ce script dans le logonscript que tu appliqueras par gpo sur tes pc clients.
Ca ne devrait poser aucun soucis. En tout cas, je ne vois aucun problème.
Marsh Posté le 25-04-2007 à 13:28:50
Merci pour ta réponse.
Pourrais-tu me préciser à quoi correspond GPO car je n'ai pas été formé encore à Windows 2003.
Si je comprends bien, je pourrai associer à chaque poste un logonscript dans Win 2003, seulement pour les PC portables comment savoir si l'agent se connecte sur le site 1 ou le site 2 pour connecter ensuite les bonnes ressources ?
Marsh Posté le 25-04-2007 à 15:10:17
bluesboy a écrit : avec l'@ IP par exemple |
Ca peut être une solution en effet. Dans ce cas existe-t-il sous Win 2000/2003 une variable d'environnement qui me permettrait d'identifier l'adresse IP du poste client ?
Marsh Posté le 25-04-2007 à 19:58:57
ou si le contenu des 2 partages sont identiques entre les sites tu fais un DFS répliqué et tout sera automatique.
Marsh Posté le 26-04-2007 à 09:59:20
Je@nb a écrit : ou si le contenu des 2 partages sont identiques entre les sites tu fais un DFS répliqué et tout sera automatique. |
Dfs est le bonne méthode.
edit : Je ne comprends pas ta question sur les pc portables. ils sont en ip fixe ? Dhcp ? Et pourquoi ne pas utiliser la variable longonserver ?
Marsh Posté le 26-04-2007 à 13:05:38
Pour les partages ils sont différents sur chaque site.
Je ne peux plus me servir de la variable "Logonserver" car je pense que je n'aurai pas de serveur Win 2003 secondaire sur le 2ème site.
Pour le moment nous utilisons des IP fixes (la valeur "yyy" du masque : www.xxx.yyy.zzz change selon le site) mais à terme nous mettrons en place DHCP.
Je suis en train d'écrire un fichier batch qui récupère l'adresse IP du poste client, test la valeur "yyy" de l'IP et renvoi le résultat.
Je mettrai en ligne ce script dès qu'il sera fonctionnel, pour avoir votre avis.
Merci et A+
Marsh Posté le 26-04-2007 à 17:24:20
Voilà le fichier batch est terminé
Pour identifier le site de connexion via l'adresse IP j'extrais de cette dernière cette partie en rouge : 192.1.12.10 par ex.
Le site 1 utilise la valeur 12 et le site 2 utilise la valeur 24. Le début "192.1." est le même pour les deux sites.
Donc voici le script correspondant :
@echo off
rem LogonScript multi-sites
rem on déclare la variable de reference qui contient l'adresse du site 1 :
set site1=12
rem on recupere l'adresse IP de la passerelle dans le resultat de la commande IPCONFIG executee sur le poste client :
for /f "tokens=2 delims=:" %%i in ('ipconfig') do set ip=%%i
echo %ip%
rem on extrait la chaine '12' ou '24' (24 correspond au site 2) de l'adresse ip :
set ip=%ip:~7,2%
echo %ip%
rem on test la variable ip :
IF "%ip%"=="%site1%" GOTO SITE1
GOTO SITE2
:SITE1
echo Site 1 IP : %ip%
rem net use N: \\SERVEURSITE1\LOGICIELS
GOTO FIN
:SITE2
echo Site 2 IP : %ip%
rem net use M: \\SERVEURSITE2\COMMUN
GOTO FIN
:FIN
rem %LOGONSERVER%\NETLOGON\metier\metier-agent.bat
pause
Je l'ai testé ça fonctionne super bien !
Il est peut-être possible de l'améliorer encore, toutes les propositions sont les bienvenues
A+
Marsh Posté le 26-04-2007 à 17:36:46
Du batch lol, tu sais il existe des moyen plus simple comme VBS, Powershell
Marsh Posté le 26-04-2007 à 18:45:35
Oui je sais mais vbs moi connais pas ... si tu peux me proposer l'equivalent en vbs je suis preneur
Marsh Posté le 26-04-2007 à 19:02:08
Code :
|
Je connais pas VBS non plus hein.
J'ai trouvé toutes les infos sur scriptcenter pour avoir les ip, google pour faire un share et la language ref pour faire un if
Marsh Posté le 26-04-2007 à 21:39:22
Que tu fasses du VBS ou du batch il est inutile de faire des tests afin de savoir si suivant ou se trouve la personne il faut faire l'action X ou Y.
Active directory gère cela tres bien.
Tu crées une OU par site avec le script de connexion qui va bien pour chaque site.
Soit par GPO, soit à partir d'un compte profilé dans chaque OU (qui sera copié pour la création des comptes) tu peux faire cela très bien.
(là il va falloir faire un peu de lecture, le site laboratoire microsoft à de bon tutoriels - c'est les résumés des MOC Microsoft) sinon je ne vois pas l'interet d'avoir migré.
Si tu veux absolument faire du script, passe au VBS ou à Kixtart ...le batch est trop limité.
Marsh Posté le 26-04-2007 à 22:19:09
Ok merci pour vos réponses, je vais étudier tout cela !
une dernière question : est-ce que les scripts vbs offrent en général une bonne compatibilité avec les différentes versions de Windows ? (je pense à NT4, 2000, 2003, XP)
Marsh Posté le 26-04-2007 à 22:27:54
http://www.microsoft.com/technet/s [...] x?mfr=true
donc pas NT4 pour le site
pour le share j'ai pas trouvé si il y avait des incomptatibilités.
Marsh Posté le 26-04-2007 à 22:44:11
C'est notamment pour cette raison de compatibilité que je me suis tourné vers la solution du script en batch ... j'ai encore des bécanes au boulot qui tournent sous NT 4.0
Avec le batch je suis assuré que son execution ne posera aucun problème, quelle que soit la version de Windows.
Marsh Posté le 26-04-2007 à 22:45:25
ReplyMarsh Posté le 26-04-2007 à 23:42:43
Je@nb a écrit : Faudrait penser à migrer hein, c'est plus supporté tu sais |
là où je bosse on a toujours un train de retard, on a du mal à suivre ... on utilise toujours Office 97 c'est pour dire
M'enfin on va bientôt mettre en place Win 2003 et l'Active Directory, je croise les doigts pour que tout se passe bien !
A+
Marsh Posté le 27-04-2007 à 15:09:45
akabis a écrit : Que tu fasses du VBS ou du batch il est inutile de faire des tests afin de savoir si suivant ou se trouve la personne il faut faire l'action X ou Y. |
Je me suis renseigné nous aurons une seule UO pour les deux sites, d'où l'obligation d'utiliser des scripts.
Marsh Posté le 25-04-2007 à 10:40:38
Bonjour à tous,
Je travaille dans une entreprise répartie sur deux lieux géographiques différents (les deux sites sont interconnectés via une ligne haut débit SDSL).
Nous allons passer très prochainement à Windows 2003 server, et je ne sais pas comment rendre fonctionnelle sous ce système ma routine d'identification du site de connexion actuellement utilisée dans mes LogonScripts.
Je m'explique :
Actuellement sur le site principal je dispose d'un controleur principal de domaine sous WIN NT 4.0 server, et sur le 2ème site il y a un serveur secondaire de domaine également sous Wint NT 4.0 Server.
Dans les LogonScripts installés sur ces deux serveurs, j'ai spécifié la routine suivante qui permet d'identifier sur quel site l'utilisateur s'authentifie et de connecter en conséquence les ressources locales du site :
rem LogonScript de Mr...
@echo off
IF "%LOGONSERVER%"=="\\SERVEUR1SITE1" GOTO SITE1
IF "%LOGONSERVER%"=="\\SERVEUR2SITE1" GOTO SITE1
GOTO SITE2
:SITE1
net use L: \\SERVEUR1SITE1\LOGICIELS
net use N: \\SERVEUR2SITE1\COMMUN
GOTO FIN
:SITE2
net use L: \\SERVEURSITE2\LOGICIELS
net use N: \\SERVEURSITE2\COMMUN
GOTO FIN
:FIN
%LOGONSERVER%\NETLOGON\metier\metier-agent.bat
Comment conserver cette fonctionnalité sous Windows 2003 sachant que :
- Les serveurs CPD et CSD actuels sous WIN NT 4.0 vont disparaitre.
- Le serveur 2003 principal sera hébergé sur le site principal.
- Nous installerons sur le site secondaire soit un serveur 2003 secondaire, soit un serveur sous windows 2000 membre du domaine (nous ne savons pas encore) qui hébergera les ressources locales du site.
Je vous remercie de m'avoir lu et j'espère que vous pourrez m'aider à trouver une solution.
Cordialement.