由于 Cisco 在其较新的固件中在交换机上设置密码之前禁用了对 Web 界面的访问,因此我需要一种远程配置交换机的替代方法。
我阅读了有关思科智能安装流程的信息: http://www.cisco.com/en/US/docs/switches/lan/smart_install/release_12.2_55_se/configuration/guide/tasks.html
唯一的问题是它需要一个 35xx 交换机作为导向器,我的大多数网络只有 2960ies,所以我不能一直这样做,不过我确实总是有一个现场的 linuxbox,我可以将其用作 DHCP 和 TFTP。
是否可以为新交换机提供由 DHCP 和 TFTP 提供的配置?
例如,如果我使用文件服务器属性配置我的 DHCP 并指向我的 tftp 服务器。
并将 client_cfg.txt 文件放在 tftp 上,其中包含基本配置并为其提供登录密码。
或者有没有更简单的方法来做到这一点?(没有控制台访问是不可能的)。
编辑:详细来说,我们的站点在不同的位置有 50 - 100 个交换机,我们不能使用控制台服务器,不能用笔记本电脑为我们跑来跑去的人等等。我开始认为我唯一的选择是在所有新站点上将 MDF 交换机升级到 3560(不幸的是我们无法访问路由器)
答案1
答案2
因此,我找到了一种方法来执行此操作,该方法适用于几乎所有 cisco 2950/60、35xx 等型号和固件。
您将需要一个带有 DHCP 和 TFTP 服务器的盒子。
需要提取配置的思科交换机显然需要能够联系 DHCP 服务器,因此 vlan1 可能是您想要确保 dhcp 传递出去的地方。
我不会详细介绍 DHCP 和 TFTP 配置,只是让您知道需要注意的内容。
对于我的 CentOS 6 发行版,我需要设置 dhcpd 选项filename
和next-server
next-server
指定 TFTP 服务器的地址。
filename
正在指定您希望思科设备下载的位于 TFTP 服务器上的配置文件。
如果没有指定文件名或该文件不可用,交换机将开始请求默认配置,每个交换机/ap/路由器的配置会有所不同。它请求的文件之一是 cisconet.cfg,如果它无法在指定的 tftp 地址上获取数据,它还将尝试 255.255.255.255,因此它也会在广播中请求 tftp 服务器。
如果您有该设备的控制台访问权限,则可以看到它请求的文件。
这是 Cisco 2960 交换机启动后的原始输出,其中指定的文件名在 TFTP 服务器上不可用,因此交换机将开始请求其他文件:
*Mar 1 00:02:18.621: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1, changed state to up
*Mar 1 00:02:28.679: AUTOINSTALL: Vlan1 is assigned 10.10.100.13
*Mar 1 00:02:38.687: AUTOINSTALL: Obtain siaddr 10.10.100.1 (as config server)
*Mar 1 00:02:38.687: AUTOINSTALL: Obtain default router (opt 3) 10.10.100.1
%Error opening tftp://10.10.100.1/client_cfg.txt (Timed out)
%Error opening tftp://10.10.100.1/client_cfg.txt (Timed out)
%Error opening tftp://10.10.100.1/client_cfg.txt (Timed out)
%Error opening tftp://255.255.255.255/client_cfg.txt (Timed out)
%Error opening tftp://255.255.255.255/client_cfg.txt (Timed out)
%Error opening tftp://255.255.255.255/client_cfg.txt (Timed out)
%Error opening tftp://10.10.100.1/network-confg (Timed out)
%Error opening tftp://10.10.100.1/cisconet.cfg (Timed out)
%Error opening tftp://10.10.100.1/router-confg (Timed out)
%Error opening tftp://10.10.100.1/ciscortr.cfg (Timed out)
%Error opening tftp://10.10.100.1/network-confg (Timed out)
%Error opening tftp://10.10.100.1/cisconet.cfg (Timed out)
%Error opening tftp://10.10.100.1/router-confg (Timed out)
%Error opening tftp://10.10.100.1/ciscortr.cfg (Timed out)
%Error opening tftp://10.10.100.1/network-confg (Timed out)
%Error opening tftp://10.10.100.1/cisconet.cfg (Timed out)
%Error opening tftp://10.10.100.1/router-confg (Timed out)
%Error opening tftp://10.10.100.1/ciscortr.cfg (Timed out)
%Error opening tftp://255.255.255.255/network-confg (Timed out)
%Error opening tftp://255.255.255.255/cisconet.cfg (Timed out)
%Error opening tftp://255.255.255.255/router-confg (Timed out)
%Error opening tftp://255.255.255.255/ciscortr.cfg (Timed out)
%Error opening tftp://255.255.255.255/network-confg (Timed out)
%Error opening tftp://255.255.255.255/cisconet.cfg (Timed out)
以下是从 TFTP 正确接收文件的交换机的输出:
*Mar 1 00:01:33.289: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1, changed state to up
*Mar 1 00:01:43.674: AUTOINSTALL: Vlan1 is assigned 10.10.100.13
*Mar 1 00:01:53.674: AUTOINSTALL: Obtain siaddr 10.10.100.1 (as config server)
*Mar 1 00:01:53.674: AUTOINSTALL: Obtain default router (opt 3) 10.10.100.1
Loading client_cfg.txt from 10.10.100.1 (via Vlan1): !
[OK - 121 bytes]
*Mar 1 00:03:51.928: %SYS-5-CONFIG_I: Configured from tftp://10.10.100.1/client_cfg.txt by console
我的配置文件目前很简单,它基本上允许使用用户名/密码 cisco 进行 telnet/www 访问
enable password cisco
!
username cisco secret 0 cisco
!
line vty 0 4
password cisco
!
end
!
我可以copy running-config startup-config
在结束前打字。
但是如果您只是希望每次交换机启动时都在运行配置中运行这个,那么就可以了。
如果有人愿意,他们可以在 3560 交换机上执行 telnet“directorip”并检查主管正在回复什么。我相信从那里很容易根据交换机的序列号实际创建自定义配置。
如果您愿意,也可以在 2960 交换机上设置 TFTP 和 DHCP,互联网上有相关指南。
答案3
不幸的是,我身边没有 3560 或 3750 可供测试,但如果您只有一个,您可以尝试通过捕获导向器和客户端交换机之间的数据来对智能安装过程进行逆向工程。
分析了客户端提供的不同 DHCP 选项之后,您可以轻松地使用必要的 DHCP 和 TFTP 配置来设置 Linux 服务器。
然后您的服务器将被用作智能安装主管。
下列的这篇博文,应该很容易建立一个实验室,然后重现预期的行为。
但是如果您现场有一个可以用作智能安装导向器的思科路由器,那么使用它可能比使用服务器更容易。
答案4
使用 AutoInstall 远程配置 Cisco 网络设备