none
Comment ajouter un deuxième DNS dans mon script powershell. RRS feed

  • Question

  • Bonjour,

    J'aimerais savoir comment rajouté un deuxième DNS a mon code, ou faire pointer mon powershell vers un fichier.bat.

    Première Solution : Comment ajouté le deuxième DNS a ce code.

    $wmi = Get-WmiObject win32_networkadapterconfiguration -filter "ipenabled = 'true'"
    [System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic') | Out-Null 
    $ip=[Microsoft.VisualBasic.Interaction]::InputBox("Entrer l'ip")
    $msk=[Microsoft.VisualBasic.Interaction]::InputBox("Entrer le Masque : ")
    $pass=[Microsoft.VisualBasic.Interaction]::InputBox("Entrer la Passerelle ")
    $dns=[Microsoft.VisualBasic.Interaction]::InputBox("Entrer le DNS : ")
    $wmi.EnableStatic($ip, $msk)
    $wmi.SetGateways($pass, 1)
    $wmi.SetDNSServerSearchOrder($dns)
    
    

    Deuxième solution : J'aimerais faire un lien dans le code ci-dessus vers un fichier.bat , ou écrire du langage Batch à l'intérieur de mon powershell

    netsh interface ip add dns "Connexion au r‚seau local" 192.168.0.81 index=2
    
    Merci d'avance.


    mercredi 30 avril 2014 12:44

Réponses

  • Non ça ne marche pas non plus, il me met toujours que le primaire.

    Exécute :

    $dns="10.0.0.1","10.0.0.2"

    $wmi = Get-WmiObject win32_networkadapterconfiguration -filter "ipenabled = 'true'"
    [System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic') | Out-Null
    $ip
    =[Microsoft.VisualBasic.Interaction]::InputBox("Entrer l'ip")
    $msk
    =[Microsoft.VisualBasic.Interaction]::InputBox("Entrer le Masque : ")
    $pass
    =[Microsoft.VisualBasic.Interaction]::InputBox("Entrer la Passerelle ")
    $wmi.EnableStatic($ip, $msk)
    $wmi
    .SetGateways($pass, 1)
    $wmi.SetDNSServerSearchOrder($dns)


    Et dis dis nous ce que ça donne.

    Blog

    • Marqué comme réponse Ammenostaw vendredi 2 mai 2014 10:17
    vendredi 2 mai 2014 10:10

Toutes les réponses

  • Bonjour,

    As-tu tenté un simple :

    $wmi = Get-WmiObject win32_networkadapterconfiguration -filter "ipenabled = 'true'"
    [System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic') | Out-Null 
    $ip=[Microsoft.VisualBasic.Interaction]::InputBox("Entrer l'ip")
    $msk=[Microsoft.VisualBasic.Interaction]::InputBox("Entrer le Masque : ")
    $pass=[Microsoft.VisualBasic.Interaction]::InputBox("Entrer la Passerelle ")
    $dns=[Microsoft.VisualBasic.Interaction]::InputBox("Entrer le DNS : ")
    $dns2=[Microsoft.VisualBasic.Interaction]::InputBox("Entrer le DNS : ")
    $wmi.EnableStatic($ip, $msk)
    $wmi.SetGateways($pass, 1)
    $wmi.SetDNSServerSearchOrder($dns,$dns2)
    


    Blog

    mercredi 30 avril 2014 13:15
  • Bonjour,

    oui j'ai tenté cette manipulation mais il me dis "surcharge introuvable". Ça ne fonctionne pas.

    Sinon serait'il possible d'écrire ce code dans du powershell ?
    netsh interface ip add dns "Connexion au r‚seau local" 192.168.0.81 index=2
    • Modifié Ammenostaw mercredi 30 avril 2014 13:47
    mercredi 30 avril 2014 13:39
  • Si tu as powershell 3, je te conseil d'utiliser :

    Set-DnsClientServerAddress

    http://technet.microsoft.com/en-us/library/jj590768.aspx

    Blog

    mercredi 30 avril 2014 13:53
  • La mise en page ressemblerais à quoi du coup ?

    $wmi.SetDnsClientServerAddress($dns,$dns2)

    quelque chose du type?

    Ps:Je viens de voir que je suis en 2.0.



    • Modifié Ammenostaw mercredi 30 avril 2014 14:17
    mercredi 30 avril 2014 13:56
  • Bonjour,

    Je n'ai pas de machine de test sous la main pour tester, mais regarde ceci :

    http://stackoverflow.com/questions/2914472/can-win32-networkadapterconfiguration-enablestatic-be-used-to-set-more-than-on

    A priori, si tu sépares les deux IP's des DNS avec une virgule, ça fonctionne.

    Tu peux tester et nous dire ?

    $dns=[Microsoft.VisualBasic.Interaction]::InputBox("Entrer le DNS : ")
    
    Saisir les IP's séparés par des virgules dans cette textbox.

    Blog

    vendredi 2 mai 2014 08:54
  • Bonjour,

    Je viens d’essayer donc lors de l'apparition de la text box j'ai taper --> 10.0.0.1,10.0.0.2

    Je n'ai aucune erreur mais lorsque que je vais voir ma configuration IP : je n'ai aucun DNS.

    Il n'est pas possible sinon d'écrire ce code dans du powershell ?

    netsh interface ip add dns "Connexion au r‚seau local"10.0.0.0 index=

    vendredi 2 mai 2014 09:43
  • Tape '10.0.0.1','10.0.0.2'.

    Blog

    vendredi 2 mai 2014 09:51
  • Non ça ne marche pas non plus, il me met toujours que le primaire.
    vendredi 2 mai 2014 10:03
  • Non ça ne marche pas non plus, il me met toujours que le primaire.

    Exécute :

    $dns="10.0.0.1","10.0.0.2"

    $wmi = Get-WmiObject win32_networkadapterconfiguration -filter "ipenabled = 'true'"
    [System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic') | Out-Null
    $ip
    =[Microsoft.VisualBasic.Interaction]::InputBox("Entrer l'ip")
    $msk
    =[Microsoft.VisualBasic.Interaction]::InputBox("Entrer le Masque : ")
    $pass
    =[Microsoft.VisualBasic.Interaction]::InputBox("Entrer la Passerelle ")
    $wmi.EnableStatic($ip, $msk)
    $wmi
    .SetGateways($pass, 1)
    $wmi.SetDNSServerSearchOrder($dns)


    Et dis dis nous ce que ça donne.

    Blog

    • Marqué comme réponse Ammenostaw vendredi 2 mai 2014 10:17
    vendredi 2 mai 2014 10:10
  • Impeccable !!! Ça marche je te remercie.
    vendredi 2 mai 2014 10:18