En fait, le script permet de vérifier si l'url saisie est à contacter sur le réseau intranet ou le réseau public.
L'autre partie du script permet de détecter si le poste est connecté au réseau de l'entreprise ou s'il est connecté ailleurs.
En gros, il regarde l'adressage IP du poste et s'il peut résoudre le nom d'uin serveur se trouvant sur le LAN de l'entreprise(mon DNS en l'occurance)
Ainsi, si le poste est sur le LAN et qu'il accède à une URL de l'intranet, le script retourne "DIRECT".
C'est la première partie du script: (qui s'éxecute séquentiellement)
if (isPlainHostName(host)||
isInNet(host,"10.0.0.0","255.0.0.0" )|| si l'adresse saisie dans l'url appartient au réseau de l'entreprise ou
isInNet(host,"127.0.0.1","255.255.255.255" )|| si l'url saisie correspond à la loopback (pour ceux qui accèdent à des aplis web en local, ca arrive)ou
dnsDomainIs(host,".domaine1.net" )|| si l'url saisie correspond à un hôte de mon domaine1 ou
dnsDomainIs(host,".domaine2.net" )) si l'url saisie correspond à un hôte de mon domaine2
return "DIRECT"; je passe en direct
Si aucune de ces conditions ci dessus n'est remplie, cela veut dire que j'accède à une page internet, mais il reste deux cas de figures:
-le premier, où le PC client est sur le LAN de l'entreprise, il faut donc passer par le proxy:
if ((isInNet(myIpAddress(), "10.0.0.0", "255.0.0.0" )|| (si mon adresse ip fait partie de ce plan d'adressage ou
isInNet(myIpAddress(), "172.16.0.0", "255.255.0.0" ))&& de celui-ci) et
(isResolvable("dns.domaine2.net" ))) que mon poste client peut résoudre le nom serveur dns.domain2.net
return "PROXY www.xxx.yyy.zzz:8080"; on passe par le proxy
- Si toutes ces conditions ne sont pas remplies, c'est que je ne suis pas sur le réseau d'entreprise et que l'utilisateur est à l'extérieur et c'est donc le deuxième cas de figure:
else
return "DIRECT" je passe en direct
J'ai utilisé ce site pour y arriver:
http://www.geckozone.org/articles/ [...] e-du-proxy
Message édité par JUJU le 11-11-2006 à 12:38:05