mirror of
				https://github.com/vyos/vyos-documentation.git
				synced 2025-10-26 08:41:46 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			73 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
| :lastproofread: 2023-01-16
 | |
| 
 | |
| .. _vyos-netmiko:
 | |
| 
 | |
| Netmiko
 | |
| =======
 | |
| 
 | |
| VyOS supports configuration via netmiko_.
 | |
| It requires to install ``python3-netmiko`` module.
 | |
| 
 | |
| Example
 | |
| -------
 | |
| 
 | |
| .. code-block:: none
 | |
| 
 | |
|   #!/usr/bin/env python3
 | |
| 
 | |
|   from netmiko import ConnectHandler
 | |
| 
 | |
|   vyos_router = {
 | |
|     "device_type": "vyos",
 | |
|     "host": "192.0.2.1",
 | |
|     "username": "vyos",
 | |
|     "password": "vyospass",
 | |
|     "port": 22,
 | |
|     }
 | |
| 
 | |
|   net_connect = ConnectHandler(**vyos_router)
 | |
| 
 | |
|   config_commands = [
 | |
|                      'set interfaces ethernet eth0 description WAN',
 | |
|                      'set interfaces ethernet eth1 description LAN',
 | |
|                     ]
 | |
| 
 | |
|   # set configuration
 | |
|   output = net_connect.send_config_set(config_commands, exit_config_mode=False)
 | |
|   print(output)
 | |
| 
 | |
|   # commit configuration
 | |
|   output = net_connect.commit()
 | |
|   print(output)
 | |
| 
 | |
|   # op-mode commands
 | |
|   output = net_connect.send_command("run show interfaces")
 | |
|   print(output)
 | |
| 
 | |
| Output
 | |
| 
 | |
| .. code-block:: none
 | |
| 
 | |
|   $ ./vyos-netmiko.py
 | |
|   configure
 | |
|   set interfaces ethernet eth0 description WAN
 | |
|   [edit]
 | |
|   vyos@r4-1.3# set interfaces ethernet eth1 description LAN
 | |
|   [edit]
 | |
|   vyos@r4-1.3# 
 | |
|   commit
 | |
|   [edit]
 | |
|   vyos@r4-1.3# 
 | |
|   Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
 | |
|   Interface        IP Address                        S/L  Description
 | |
|   ---------        ----------                        ---  -----------
 | |
|   eth0             203.0.113.1/24                    u/u  WAN
 | |
|   eth1             192.0.2.1/30                      u/u  LAN
 | |
|   eth2             -                                 u/u  
 | |
|   lo               127.0.0.1/8                       u/u  
 | |
|                    ::1/128                                
 | |
|   vtun10           10.10.0.1/24                      u/u  
 | |
|   [edit]
 | |
| 
 | |
| .. _netmiko: https://github.com/ktbyers/netmiko
 |