구성 파일, 이미지 파일 등을 전송하는 것은 네트워크 장치 관리에서 일반적인 작업입니다. Netmiko는 다양한 네트워크 장치와 상호 작용하는 데 사용할 수 있는 Python 라이브러리로 SCP(Secure Copy Protocol) 기능을 포함하여 파일 전송을 위한 몇 가지 기능을 제공합니다.
Netmiko는 다양한 네트워크 장치를 연결하고 관리하는 데 사용할 수 있는 Paramiko용 확장 Python 라이브러리입니다. Netmiko는 Cisco, Juniper, Arista, HP 등과 같은 다양한 네트워크 장치에 연결하는 데 사용할 수 있습니다. Netmiko 라이브러리는 연결, 명령 전송, 파일 전송 등과 같은 작업을 보다 편리하고 사용자 친화적으로 만들기 위한 다양한 기능을 제공합니다.
SCP는 SSH 프로토콜을 사용하여 파일을 전송하는 보안 파일 전송 프로토콜입니다. FTP 및 TFTP와 같은 다른 파일 전송 프로토콜과 비교하여 SCP는 암호화된 연결을 사용하여 더 높은 보안을 제공합니다. SCP는 대용량 파일을 전송할 때 효율성이 떨어지지만, 작은 파일을 전송할 때는 이상적인 선택입니다.
넷미코를 사용하기 전, 설치가 필요합니다. Netmiko는 pip를 사용하여 설치할 수 있습니다. 다음 명령을 사용하세요:
pip install netmiko
Netmiko 라이브러리의 SCP 기능을 사용하면 로컬 컴퓨터에서 장치로, 그리고 장치에서도 파일을 전송할 수 있습니다. 장치에서 장치로 파일을 전송합니다. 아래에서는 Netmiko의 SCP 기능을 사용하여 파일을 전송하는 방법을 소개합니다.
기기에서 로컬 컴퓨터로 파일을 전송하려면 Netmiko의 file_transfer
기능을 사용해야 합니다. 이 기능에는 원격 경로, 로컬 경로, 파일 이름 및 파일 전송 방향(원격 장치에서 로컬 컴퓨터로)의 네 가지 매개 변수가 필요합니다. 원격 경로와 로컬 경로는 상대 경로 또는 절대 경로일 수 있습니다. 파일 전송 방향은 get
문자열을 사용하여 지정해야 합니다. 다음은 Netmiko의 file_transfer
함수를 사용하여 파일을 전송하는 샘플 코드입니다. file_transfer
函数。该函数需要四个参数:远程路径、本地路径、文件名和文件传输方向(从远程设备到本地计算机)。其中远程路径和本地路径可以是相对路径或绝对路径。文件传输方向需要使用字符串get
来指定。以下是使用Netmiko的file_transfer
函数传输文件的示例代码:
from netmiko import ConnectHandler device = { 'device_type': 'cisco_ios', 'ip': '192.168.1.1', 'username': 'username', 'password': 'password', } remote_path = 'flash:/config.txt' local_path = '/home/user/config.txt' file_name = 'config.txt' with ConnectHandler(**device) as ssh: ssh.file_transfer( remote_file=remote_path, local_file=local_path, file_system='flash:', direction='get' )
在上面的示例代码中,我们首先定义了一个设备字典,然后使用ConnectHandler
函数连接设备。在连接设备之后,我们使用file_transfer
函数传输文件。remote_file
参数指定了远程设备上的文件路径,local_file
参数指定了本地计算机上的文件路径,file_system
参数指定了文件所在的文件系统,direction
参数指定了传输方向。运行上述代码,即可从设备传输文件到本地计算机。
从本地计算机传输文件到设备也需要使用Netmiko的file_transfer
函数。该函数需要四个参数:远程路径、本地路径、文件名和文件传输方向(从本地计算机到远程设备)。其中远程路径和本地路径可以是相对路径或绝对路径。文件传输方向需要使用字符串put
来指定。以下是使用Netmiko的file_transfer
函数从本地计算机传输文件到设备的示例代码:
from netmiko import ConnectHandler device = { 'device_type': 'cisco_ios', 'ip': '192.168.1.1', 'username': 'username', 'password': 'password', } remote_path = 'flash:/config.txt' local_path = '/home/user/config.txt' file_name = 'config.txt' with ConnectHandler(**device) as ssh: ssh.file_transfer( remote_file=remote_path, local_file=local_path, file_system='flash:', direction='put' )
在上面的示例代码中,我们同样首先定义了一个设备字典,然后使用ConnectHandler
函数连接设备。在连接设备之后,我们使用file_transfer
函数传输文件。remote_file
参数指定了远程设备上的文件路径,local_file
参数指定了本地计算机上的文件路径,file_system
参数指定了文件所在的文件系统,direction
rrreee
ConnectHandler
함수를 사용하여 연결합니다. 장비. 기기를 연결한 후 file_transfer
기능을 사용하여 파일을 전송합니다. remote_file
매개변수는 원격 장치의 파일 경로를 지정하고, local_file
매개변수는 로컬 컴퓨터의 파일 경로를 지정하며, file_system
매개변수는 지정합니다. 파일 위치, direction
매개변수는 전송 방향을 지정합니다. 위 코드를 실행하여 장치에서 로컬 컴퓨터로 파일을 전송합니다. 🎜🎜로컬 컴퓨터에서 기기로 파일 전송🎜🎜로컬 컴퓨터에서 기기로 파일을 전송하려면 Netmiko의 file_transfer
기능도 사용해야 합니다. 이 기능에는 원격 경로, 로컬 경로, 파일 이름 및 파일 전송 방향(로컬 컴퓨터에서 원격 장치로)의 네 가지 매개 변수가 필요합니다. 원격 경로와 로컬 경로는 상대 경로 또는 절대 경로일 수 있습니다. 파일 전송 방향은 put
문자열을 사용하여 지정해야 합니다. 다음은 Netmiko의 file_transfer
함수를 사용하여 로컬 컴퓨터에서 장치로 파일을 전송하는 샘플 코드입니다. 🎜rrreee🎜위 샘플 코드에서는 먼저 장치 사전을 정의한 다음 ConnectHandler
장치를 연결하는 함수입니다. 기기를 연결한 후 file_transfer
기능을 사용하여 파일을 전송합니다. remote_file
매개변수는 원격 장치의 파일 경로를 지정하고, local_file
매개변수는 로컬 컴퓨터의 파일 경로를 지정하며, file_system
매개변수는 지정합니다. 파일 위치, direction
매개변수는 전송 방향을 지정합니다. 위 코드를 실행하여 로컬 컴퓨터에서 장치로 파일을 전송합니다. 🎜위 내용은 Python에서 파일 전송에 Netmiko를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!