Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.

Announcement

Collapse
No announcement yet.

Chương trình sử dụng thư viện netmiko của ngôn ngữ python để cấu hình các thiết bị mạng ( Phần 2)

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Chương trình sử dụng thư viện netmiko của ngôn ngữ python để cấu hình các thiết bị mạng ( Phần 2)

    VIẾT CHƯƠNG TRÌNH SỬ DỤNG THƯ VIỆN NETMIKO CỦA NGÔN NGỮ PYTHON ĐỂ CẤU HÌNH CÁC THIẾT BỊ MẠNG ( PHẦN 2)

    Mình sẽ tiếp tục bài học này, sau khi cấu hình cơ bản trên Switch, mình sẽ tiếp tục viết chương trình python
    Mình sẽ dùng phần mềm Vscode, tạo new file python_netmiko.py.
    Đầu tiên, từ thư viện Netmiko import ConnectHandler và khai báo thông tin Switch dưới dạng từ điển.


    # Import hàm ConnectHandler từ thư viện netmiko
    from netmiko import ConnectHandler

    # Tạo Dict SW1 bao gồm các thuộc tính như sau
    SW2 = {
    'device_type': 'cisco_ios',
    # Loại thiết bị
    'ip': '192.168.1.1', # Địa chỉ IP
    'username': 'vnpro', # Tên đăng nhập
    'password': 'vnpro#123', # Mật khẩu
    'secret': 'vnpro#321' # Mật khẩu enable
    }


    Tiếp theo, truyền từ điển SW2 vào hàm ConnectHandler và vào mode enable

    net_connect = ConnectHandler(**SW2) # Kết nối tới thiết bị SW1
    net_connect.enable() # Tạo kết nối vào mode enable


    (Vì SW2 có dạng là từ điển nên chúng ta cần truyền vào hàm ConnectHandler dưới dạng **SW2.)
    Tiếp theo, mình tạo vòng lặp for để tạo Vlan từ 10-30:


    for n in range(10, 31):
    taoVLAN = 'vlan' + str(n)
    # Tạo tên VLAN
    ipVLAN = 'int vlan' + str(n) + ' ip add 172.16.' + str(n) + ' 255.255.255.0' + ' no shutdown' # Địa chỉ IP cho VLAN
    net_connect.send_config_set(taoVLAN) # Gửi cấu hình cho VLAN
    net_connect.send_config_set(ipVLAN) # Gửi cấu hình IP cho VLAN


    Giải thích code:
    1. Chúng ta sẽ tạo ra 1 mảng taoVlAN=[‘vlan ‘ + str(n)] trong đó n di chuyển từ 10-30
    2. Để đặt IP cho interface Vlan ta sử dụng câu lệnh:
    • interface vlan 10
      ip add 172.16.10.1 255.255.255.0
      no shutdown
    • Interface vlan 30
      ip add 172.16.30.1 255.255.255.0
      no shutdown
    1. Mình sẽ tạo 1 mảng ipVlan=['int vlan '+str(n),'ip add 172.16.'+str(n)+'.1 255.255.255.0','no shutdown']. Trong đó n chạy từ 10-30.
    2. Sau đó, gửi 2 mảng taoVLAN và ipVlan bằng send_config_set, in kết quả ra màn hình.
    3. Để kiểm tra kết quả trên switch ta dùng câu lệnh “sh ip int br | i Vlan” để truyền câu lệnh đó đến Switch ta dùng send_config_command (‘sh ip int brief | i Vlan’)
    Đoạn code tổng thể của mình sẽ như sau:
    Click image for larger version  Name:	Picture5.png Views:	0 Size:	48.5 KB ID:	429519




    Kết quả :Khi chạy file python_netmiko.pysẽ trả về các interface vlan đã tạo là thành công.
    Click image for larger version  Name:	Picture1.png Views:	0 Size:	74.2 KB ID:	429520



    Để chắc chắn hơn mình sẽ kiểm tra trên switch.
    Kết quả kiểm tra trên switch:
    Click image for larger version  Name:	Picture2.png Views:	0 Size:	80.6 KB ID:	429521


    Email : vnpro@vnpro.org
    ---------------------------------------------------------------------------------------------------------------
    Trung Tâm Tin Học VnPro
    149/1D Ung Văn Khiêm P25 Q.Bình thạnh TPHCM
    Tel : (08) 35124257 (5 lines)
    Fax: (08) 35124314

    Home page: http://www.vnpro.vn
    Support Forum: http://www.vnpro.org
    - Chuyên đào tạo quản trị mạng và hạ tầng Internet
    - Phát hành sách chuyên môn
    - Tư vấn và tuyển dụng nhân sự IT
    - Tư vấn thiết kế và hỗ trợ kỹ thuật hệ thống mạng

    Network channel: http://www.dancisco.com
    Blog: http://www.vnpro.org/blog
Working...
X