[Risolto] Modifica delle impostazioni di rete della macchina

Domande sul packaging WAPT / Richieste e assistenza sui pacchetti Wapt.
Regole del forum
Regole del forum della community
* Supporto in inglese su www.reddit.com/r/wapt
* Supporto della community in francese disponibile su questo forum
* Si prega di anteporre [RISOLTO] al titolo dell'argomento se è stato risolto.
* Si prega di non modificare un argomento contrassegnato con [RISOLTO]. Aprire un nuovo argomento facendo riferimento a quello precedente.
* Specificare la versione di WAPT installata, la versione completa e il numero di build (2.2.1.11957 / 2.2.2.12337 / ecc.) nonché l'edizione Enterprise/Discovery.
* Le versioni 1.8.2 e precedenti non sono più supportate. Le uniche domande accettate relative alla versione 1.8.2 riguardano l'aggiornamento a una versione supportata (2.1, 2.2, ecc.).
* Specificare il sistema operativo del server (Linux/Windows) e la versione (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Specificare il sistema operativo della macchina di amministrazione/creazione dei pacchetti e della macchina con l'agente problematico, se applicabile (Windows 7/10/11/Debian 11/ecc.).
* Evitare di porre più domande quando si apre una discussione, altrimenti potrebbe essere ignorata. Se ci sono più discussioni, aprirle separatamente, preferibilmente una dopo l'altra e non tutte contemporaneamente (ovvero, non intasare il forum).
* Includere frammenti di codice, screenshot e altre immagini direttamente nel post. I link a Pastebin, Bitly e altri siti di terze parti verranno sistematicamente rimossi.
* Come in qualsiasi forum della community, il supporto è fornito volontariamente dai membri. Se si necessita di supporto commerciale, è possibile contattare il reparto vendite di Tranquil IT al numero 02.40.97.57.55
Bloccato
Gaeldi
Messaggi: 254
Registrazione: 22 nov 2015 - 08:37

20 agosto 2019 - 11:19

Buongiorno,
Voglio modificare la configurazione dei miei computer per passare da un indirizzo IP manuale a un indirizzo IP e server DNS assegnati da DHCP. Sto testando con questo codice:

Codice: Seleziona tutto

# -*- coding: utf-8 -*-
from setuphelpers import *
import wmi

def install():
    nic_configs = wmi.WMI().Win32_NetworkAdapterConfiguration(IPEnabled=True)
    nic = nic_configs[0]
    nic.EnableDHCP()
    nic.SetDNSServerSearchOrder([])
Quando installo il pacchetto su un PC studentesco Windows 7 selezionato a caso, le impostazioni DNS manuali rimangono invariate, solo l'indirizzo IP è impostato su automatico. Ma se installo il pacchetto tramite riga di comando, funziona! Esiste un altro metodo per farlo funzionare con l'installazione da console?
Ultima modifica di gaelds il 21 agosto 2019 alle 08:28, modificato 1 volta.
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

20 agosto 2019 - 13:41

In allegato troverete un codice che funziona per noi

Codice: Seleziona tutto

#!/usr/bin/python
# -*- coding: utf-8 -*-
from setuphelpers import *
import wmi
uninstallkey = []

def install():
    try:
        nic_configs = wmi.WMI().Win32_NetworkAdapterConfiguration(IPEnabled=True)
        if not nic_configs:
            raise Exception
    except Exception:
        print u"No network interface found. Exiting gracefully."
        exit(1)

    for nic in nic_configs:
        print u"Please wait..."
        print u"Using DHCP on interface '" + nic.description + "'"
        nic.EnableDHCP()
        nic.SetDynamicDNSRegistration()
        nic.EnableDHCP()
        run(u'ipconfig /renew', timeout=15)
Gaeldi
Messaggi: 254
Registrazione: 22 nov 2015 - 08:37

21 agosto 2019 - 08:28

Ottimo, grazie mille!
Gaeldi
Messaggi: 254
Registrazione: 22 nov 2015 - 08:37

4 novembre 2019 - 11:17

Alla fine ho provato questo codice su un computer Windows 7, ma il pacchetto non si installa correttamente. Anche dopo il riavvio, l'indirizzo IP è impostato su automatico, ma le vecchie impostazioni DNS rimangono manuali.

Ecco i log di installazione dalla console:

Codice: Seleziona tutto

Please wait...Using DHCP on interface 'Realtek PCIe GBE Family Controller'Traceback (most recent call last):
  File "C:\wapt\common.py", line 3846, in install_wapt
    exitstatus = setup.install()
  File "c:\windows\temp\waptcnpcef\setup.py", line 22, in install
  File "C:\wapt\common.py", line 3625, in run
    return ensure_unicode(setuphelpers.run(*arg,pidlist=self.pidlist,**args))
  File "C:\wapt\setuphelpers.py", line 1046, in run
    raise TimeoutExpired(cmd,''.join(output),timeout)
TimeoutExpired: Command 'ipconfig /renew' timed out after 15 seconds with output ''\r\nConfiguration IP de Windows\r\n\r\n''
TimeoutExpired: Command 'ipconfig /renew' timed out after 15 seconds with output ''\r\nConfiguration IP de Windows\r\n\r\n''

Se elimino il comando "ipconfig /renew", il pacchetto si installa senza errori, ma le impostazioni DNS non vengono ripristinate automaticamente.
Se sostituisco il comando nic.SetDynamicDNSRegistration() con nic.SetDNSServerSearchOrder(['172.16.80.13','172.16.80.14']), il DNS viene effettivamente modificato.
Anche il comando nic.SetDynamicDNSRegistration(FullDNSRegistrationEnabled=1) sembra non funzionare.
Bloccato