首页 > 解决方案 > 无法通过 TFTP 的 python 脚本在路由器上执行配置

问题描述

我正在尝试使用 ZTP 方法来配置我的路由器 [R2]。我的 Ubuntu 机器既是 DHCP 又是 TFTP 服务器。

Ubuntu [DHCP 服务器]:16.04.5 LTS Cisco 路由器 [DHCP 客户端]:7200,版本 15.2(4)S5

这是 python 脚本 - ztp.py。ztp.py 存储在/var/lib/tftpboot/

#!/usr/bin/env python3.5.2

import time
import cli

time.sleep(200)
print ("\n\n *** ZTP Day 0 Configuation *** \n\n")

fn = open('TXJla-outgoing/R1.txt','r')
fn.seek(0)
c =fn.readlines()
fn.close()

cli.configurep([c])

主机 R2的配置dhcpd.conf是 -

host R2 {
  hardware ethernet CA:02:3B:E3:00:08;
  fixed-address 198.51.100.5;
  option bootfile-name !<opt 67> "/ztp.py";
  option tftp-server-name !<opt 150> "198.51.100.2";
}

配置不在路由器上执行。请帮忙解决。

标签: dhcptftp

解决方案


在我的设置中(Cisco 设备作为 DHCP 服务器,debian 作为 tftp)我不需要选项 150。

CiscoDHCPServer 上的代码:

   ip dhcp pool ztp
       network "networkip" "SNM"   
       default-router "Default gateway"    
       dns-server "ip"             
       option 67 ascii http://"ip of debian":80/zeroday.py

代码的位置也在 /var/www/html/ 但我不确定这是否会改变任何东西


推荐阅读