像设备配置文件上传的工作,主要是通过TFTP服务器进行的,当然也可以使用其他文件传输协议,如本节的FTP协议。与TFTP协议一样,也可以从FTP服务器中复制配置文件到交换机上,或者把交换机上的配置文件上传到FTP服务器上。
FTP传输的特点是在每个连接到服务器的FTP请求中都需要指定请求客户的用户名和密码,除非已配置可以匿名访问。在使用FTP协议从交换机上复制配置文件到服务器时,交换机IOS软件会按以下优先级顺序发送第一个有效用户名:
如果用户名是指定的,则在copy命令中指定用户名。
通过ip ftp username username全局配置命令指定用户名。
匿名。
与用户名对应,交换机也会按以下优先级顺序发送第一个有效的密码:
如果密码是指定的,则在copy命令中指定密码。
通过ip ftp password password全局配置命令指定密码。
命名为[email protected]的交换机密码。变量username是与当前会话关联的用户名,Switchname是指配置的主机名,domain是指交换机域。
用户名和密码必须与FTP服务器账户相关联。如果正写入文件到服务器中,则必须有适当的配置来接受你的FTP写入请求。可以使用ip ftp username和ip ftp password命令来为所有复制指定用户名和密码。如果想要仅为复制操作指定用户名,则要在copy命令中包括用户名。如果服务器有一个目录结构,则配置文件被写入到与服务器上用户名关联的目录中,或者从与服务器上用户名关联的目录中复制配置文件。
1.为使用FTP下载或上传配置文件做准备
在开始使用FTP下载或者上传配置文件前,请做好以下准备:
确保交换机有到TFTP服务器的路由(如果是直接连接的,则不需要)。如果没有路由器来路由通信,则交换机和TFTP服务器必须位于同一个网络中。用ping命令测试交换机到到TFTP服务器的连接。
如果是通过控制台端口或者Telnet会话访问交换机,而你没有有效的用户名,则请确保当前的FTP用户名是想要用于FTP下载的用户名。可以通过键入show users特权模式命令查看当前有效的用户名;如果不想使用这个用户名,则可以通过使用ip ftp username username全局配置命令创建一个新的FTP用户名(新的用户名是存储在NVRAM中的)。如果是通过Telnet会话访问交换机的,且你已有了有效的用户名,则使用这个用户名,不需要设置这个FTP用户名。如果想仅为一个复制操作指定一个用户名,则要在copy命令中包括这个用户名。
在上传一个配置文件到FTP服务器中时,它必须经过适当的配置,以接受来自交换机的用户请求。
2.使用FTP下载配置文件
使用FTP下载或上传配置文件的步骤远比使用TFTP服务器下载或上传的步骤复杂。按照表2-6中的步骤设置使用FTP下载配置文件(自特权模式开始)。
表2-6 设置使用FTP下载配置文件的步骤
步骤 |
命令 |
用途说明 |
1 |
按照本节前面介绍的准备工作 适当配置FTP服务器 |
|
2 |
通过控制台端口、以太网管理 端口或者Telnet会话登录交换机 |
|
3 |
Switch#configure terminal |
进入交换机的全局配置模式。 这步仅对如果你要覆盖下面第 4、5、6步所配置的默认远程 用户名或密码时才需要 |
4 |
Switch(config)#ip ftp usernameusername |
(可选)改变默认远程用户名 |
5 |
Switch(config)#ip ftp passwordpassword |
(可选)改变默认密码 |
6 |
Switch(config)#end |
返回到特权模式 |
7 |
Switch#copy ftp:[[[//[username [:password]@] location]/directory]/filename] system:running-config 或者 Switch#copy ftp:[[[//[username [:password]@] location]/directory]/filename] nvram:startup-config |
使用FTP从网络服务器复制 配置文件到运行配置文件 或者启动配置文件中。 username[:password]参数用来指定 下载时所使用的用户名和密码 (如果进行了第4、5步,则在 此不必再次指定了);location 参数用来指定FTP服务器的位置, 通常是IP地址,也可以是主机名; /directory参数用来指定要下载的配 置文件在FTP服务器上的路径; /filenam参数用来指定要下载的配置文件名 |
以下示例显示了如何以用户名netadmin1、密码mypass,从IP地址为172.16.101.101的远程FTP服务器上复制名为host1-confg的配置文件到当前交换机的运行配置文件中。在这其中运行配置文件替换时会有一个确认提示。
Switch# copy ftp://netadmin1:[email protected].
101.101/host1-confg system:running-config
Configure using host1-confg from 172.16.101.101? [confirm] y
Connected to 172.16.101.101
Loading 1112 byte file host1-confg:![OK]
Switch#
%SYS-5-CONFIG: Configured from host1-config by ftp from 172.16.101.101
以下示例显示了如何指定远程用户名为netadmin1,密码为mypass,然后从IP地址为172.16.101.101的远程FTP服务器上复制host2-confg配置文件到当前交换机的启动配置文件中。在这其中启动配置文件替换时会有一个确认提示。
Switch# configure terminal
Switch(config)# ip ftp username netadmin1
Switch(config)# ip ftp password mypass
Switch(config)# end
Switch# copy ftp: nvram:startup-config
Address of remote host [255.255.255.255]? 172.16.101.101
Name of configuration file[rtr2-confg]? host2-confg
Configure using host2-confg from 172.16.101.101?[confirm] y
Connected to 172.16.101.101
Loading 1112 byte file host2-confg:![OK]
[OK]
Switch#
%SYS-5-CONFIG_NV:Non-volatile store
configured from host2-config by ftp from
172.16.101.101
3.使用FTP上传配置文件
按照表2-7中的步骤设置可以使用FTP服务器上传交换机配置文件(自特权模式开始)。
表2-7 设置使用FTP上传配置文件的步骤
步骤 |
命令 |
用途说明 |
1 |
按照本节前面介绍的准备工作适当配置FTP服务器 |
|
2 |
通过控制台端口、以太网管理端口或者 Telnet会话登录交换机 |
|
3 |
Switch# configure terminal |
进入交换机的全局配置模式。 这步仅对如果你要覆盖下面第4、5、6 步所配置的默认远程用户名或密码时才需要 |
4 |
Switch(config)# ip ftp usernameusername |
(可选)改变默认远程用户名 |
5 |
Switch(config)# ip ftp passwordpassword |
(可选)改变默认密码 |
6 |
Switch(config)# end |
返回到特权模式 |
7 |
Switch#copy system:running-config @]location]/directory]/filename] 或者 Switch#copy nvram:startup-config @]location]/directory]/filename] |
使用FTP存储交换机运行或者启动 配置文件到指定的位置。 username[:password]参数用来指定 上传时所使用的用户名和密码 (如果进行了第4、5步, 则在此不必再次指定了); location参数用来指定FTP 服务器的位置,通常是IP地址, 也可以是主机名;/directory参数 用来指定要上传的配置文件在 FTP服务器上的路径;/filename 参数用来指定上传后的配置文件名 |
以下示例显示了如何以用户名netadmin1、密码mypass、名称switch2-confg复制运行配置文件到IP地址为172.16.101.101的远程FTP服务器中。在这其中有一个操作确认提示。
Switch# copy system:running-config
ftp://netadmin1:[email protected]/switch2-confg
Write file switch2-confg on host 172.16.101.101?[confirm] y
Building configuration...[OK]
Connected to 172.16.101.101
Switch#
以下示例显示了如何以用户名netadmin2、密码mypass使用FTP复制交换机启动配置文件存储在远程FTP服务器上。在这其中也有一个操作确认提示。
Switch# configure terminal Switch(config)# ip ftp username netadmin2 Switch(config)# ip ftp password mypass Switch(config)# end Switch# copy nvram:startup-config ftp: Remote host[]? 172.16.101.101 Name of configuration file to write [switch2-confg]? y Write file switch2-confg on host 172.16.101.101?[confirm] ![OK]