Sen (bu komut dosyalarını çalıştırmadan önce PyWin32 extensions ve WMI modülünü yüklemek) Bunu yapmak için Python WMI module kullanabilirsiniz yapabilirsiniz.
import wmi
# Obtain network adaptors configurations
nic_configs = wmi.WMI().Win32_NetworkAdapterConfiguration(IPEnabled=True)
# First network adaptor
nic = nic_configs[0]
# IP address, subnetmask and gateway values should be unicode objects
ip = u'192.168.0.11'
subnetmask = u'255.255.255.0'
gateway = u'192.168.0.1'
# Set IP address, subnetmask and default gateway
# Note: EnableStatic() and SetGateways() methods require *lists* of values to be passed
nic.EnableStatic(IPAddress=[ip],SubnetMask=[subnetmask])
nic.SetGateways(DefaultIPGateway=[gateway])
İşte
(DHCP aracılığıyla) otomatik olarak bir IP adresi elde dönmek için yapılması gerekenler::
import wmi
# Obtain network adaptors configurations
nic_configs = wmi.WMI().Win32_NetworkAdapterConfiguration(IPEnabled=True)
# First network adaptor
nic = nic_configs[0]
# Enable DHCP
nic.EnableDHCP()
Not: Burada donanım aygıtına Konuşacak bir şeyler nasıl yapılandırılacağı bir üretim komut sen EnableStatic(), SetGateways() ve EnableDHCP() tarafından döndürülen değerleri kontrol etmelisiniz. ('0' başarı anlamına gelir, '1' yeniden başlatma ve diğer değerler, yöntem adları tarafından bağlanan MSDN sayfalarında açıklanmaktadır. Not: EnableStatic() ve SetGateways() için, hata kodları listeler olarak döndürülür).
Win32NetworkAdapterConfiguration sınıfının tüm işlevleri hakkında tam bilgi de found on MSDN olabilir.
Not: Bunu Python 2.7 ile test ettim, ancak Python 3 için PyWIn32 ve WMI modülleri bulunduğundan, "u" harfini dize değişmezlerinden önce kaldırarak Python 3 için çalışabilmeniz gerektiğini düşünüyorum.
İlgili soru: http://stackoverflow.com/questions/83756/how-to-programmatically-enable-disable-network-interfaces-windows-xp – tzot