亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python如何實現自動裝機功能

發布時間:2020-10-26 15:52:03 來源:億速云 閱讀:185 作者:Leah 欄目:開發技術

這篇文章運用簡單易懂的例子給大家介紹Python如何實現自動裝機功能,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

一、利用snmp協議獲取到目標機器的網卡mac地址

代碼如下

def get_mac(ipmi, netcard):
	#ipmi即服務器idrac_ip,netcard即網卡序列號(一般是4個,從1開始)
  # 將控制卡IP傳給snmp命令,獲取mac地址
  popen = subprocess.Popen(f'snmpwalk -v 2c -c public {ipmi} 1.3.6.1.4.1.674.10892.5.4.1100.90.1.6.1.{netcard}',
               stdout=subprocess.PIPE, shell=True)
  popen.wait()
  res = popen.stdout.read().decode().split()[-1].split('"')[0]
  res1 = res.replace(":", "")
  res2 = res.lower()
  # 獲取到的mac地址,去空格,寫入到文件中
  with open("/root/allow_mac", mode="w", encoding="utf-8") as f:
    f.write(res + "\n")
  print(res)
  #獲取到mac地址的目的有兩個,可以將mac地址傳給后端交換機,交換機找到對應的接口,自動進行網絡配置的下發,
	#另外一個是針對mac地址做防火墻控制

防火墻的初始化:

def init_iptables():
  # 調用iptables初始化防火墻策略
  print("防火墻開始初始化")
  subprocess.call('/sbin/iptables -F ', shell=True)
  subprocess.call('/sbin/iptables -P OUTPUT ACCEPT ', shell=True)
  subprocess.call('/sbin/iptables -A INPUT -m state --state INVALID -j DROP ', shell=True)
  subprocess.call('/sbin/iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT ', shell=True)
  subprocess.call('/sbin/iptables -P INPUT DROP ', shell=True)
  # stdout = subprocess.call('/sbin/iptables -L ', shell=True)
  # print(stdout)
  # subprocess.call('systemctl stop dhcpd ', shell=True)
  print("防火墻初始化完畢")
  #主要就是封裝了一系列防火墻的配置,在裝機完成之后,可以進行再控制,防止其他機器通過pxe-server進行裝機操作

關于Python如何實現自動裝機功能就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

平定县| 渝中区| 长宁县| 罗江县| 定安县| 夏邑县| 桂东县| 卫辉市| 河曲县| 乌拉特中旗| 历史| 攀枝花市| 临桂县| 呈贡县| 湾仔区| 察哈| 孝义市| 修武县| 都江堰市| 芮城县| 金坛市| 武穴市| 忻城县| 永福县| 南阳市| 南通市| 南澳县| 繁昌县| 安远县| 杭锦旗| 阿瓦提县| 亚东县| 剑阁县| 霍山县| 斗六市| 洛浦县| 白朗县| 河南省| 安西县| 诸城市| 留坝县|