instructions.sh will look like:
[root@jarvis ~]# cat /usr/local/bin/fullsetup2920/instructions.sh
#!/usr/bin/expect -f
set IPaddress [lindex $argv 0]
set IPaddress2 [lindex $argv 1]
set Netmask [lindex $argv 2]
set Hostname [lindex $argv 3]
spawn telnet $IPaddress
expect “continue”
send “x\r”
expect “#“
send “conf\r”
expect ”#“
send “hostname $Hostname\r”
expect ”#“
send “vlan 535\r”
expect ”#“
send “name MNGT\r”
expect ”#“
send “tagged 10\r”
expect ”#“
send “ip addr $IPaddress2 $Netmask\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 536\r”
expect ”#“
send “name DEAD_VLAN\r”
expect ”#“
send “untag 2-9\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 103\r”
expect ”#“
send “name ACCORHOTELS-STAFF\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 502\r”
expect ”#“
send “name HSIA_PUBLIC\r”
expect ”#“
send “tagged 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 503\r”
expect ”#“
send “name HSIA_CONF\r”
expect ”#“
send “tagged 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 504\r”
expect ”#“
send “name HSIA_ROOMS\r”
expect ”#“
send “tagged 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 506\r”
expect ”#“
send “name IPTV\r”
expect ”#“
send “tagged 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 508\r”
expect ”#“
send “name VoIP\r”
expect ”#“
send “tagged 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 550\r”
expect ”#“
send “name CONF_ROOM_1\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 551\r”
expect ”#“
send “name CONF_ROOM_2\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 552\r”
expect ”#“
send “name CONF_ROOM_3\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 553\r”
expect ”#“
send “name CONF_ROOM_4\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 554\r”
expect ”#“
send “name CONF_ROOM_5\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 555\r”
expect ”#“
send “name CONF_ROOM_6\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 556\r”
expect ”#“
send “name CONF_ROOM_7\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 557\r”
expect ”#“
send “name CONF_ROOM_8\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 558\r”
expect ”#“
send “name CONF_ROOM_9\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 559\r”
expect ”#“
send “name CONF_ROOM_10\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 560\r”
expect ”#“
send “name CONF_ROOM_11\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 561\r”
expect ”#“
send “name CONF_ROOM_12\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 562\r”
expect ”#“
send “name CONF_ROOM_13\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 563\r”
expect ”#“
send “name CONF_ROOM_14\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 564\r”
expect ”#“
send “name CONF_ROOM_15\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 565\r”
expect ”#“
send “name CONF_ROOM_16\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 566\r”
expect ”#“
send “name CONF_ROOM_17\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 567\r”
expect ”#“
send “name CONF_ROOM_18\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 568\r”
expect ”#“
send “name CONF_ROOM_19\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 569\r”
expect ”#“
send “name CONF_ROOM_20\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 590\r”
expect ”#“
send “name CONF_ROOM_21\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 591\r”
expect ”#“
send “name CONF_ROOM_22\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 592\r”
expect ”#“
send “name CONF_ROOM_23\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 593\r”
expect ”#“
send “name CONF_ROOM_24\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 594\r”
expect ”#“
send “name CONF_ROOM_25\r”
expect ”#“
send “tag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “vlan 1\r”
expect ”#“
send “no untag 10\r”
expect ”#“
send “exit\r”
expect ”#“
send “ip dns server-address priority 1 8.8.8.8\r”
expect ”#“
send “ip dns server-address priority 2 8.8.4.4\r”
expect ”#“
send “crypto key generate ssh\r”
sleep 5
expect ”#“
send “ip ssh\r”
expect ”#“
send “aaa authentication ssh enable local\r”
expect ”#“
send “logging 172.16.8.241\r”
sleep 1
expect ”#“
send “logging facility local1\r”
expect ”#“
send “snmp-server community cru3sl1 operator unrestricted\r”
expect ”#“
send “snmp-server community b@mb1x manager unrestricted\r”
sleep 1
expect ”#“
send “snmp-server contact SHS\r”
expect ”#“
send “snmp-server location HUK737796\r”
expect ”#“
send “no snmp-server community public\r”
expect ”#“
send “loop-protect all\r”
expect ”#“
send “loop-protect disable-timer 60\r”
expect ”#“
send “fault-finder all\r”
expect ”#“
send “sntp unicast\r”
expect ”#“
send “sntp 720\r”
expect ”#“
send “sntp server priority 1 172.16.8.225\r”
expect ”#“
send “sntp server priority 2 172.16.16.225\r”
expect ”#“
send “timesync sntp\r”
expect ”#“
send “password manager user-name admin\r”
expect ”:“
send “g3n3va\r”
expect ”:“
send “g3n3va\r”
expect ”#“
send “password operator\r”
expect ”:“
send “g3n3va\r”
expect ”:“
send “g3n3va\r”
expect ”#“
send “interface all\r”
expect ”#“
send “no lacp\r”
expect ”#“
send “exit\r”
expect ”#“
send “aaa authentication login privilege-mode\r”
expect ”#“
send “aaa authentication telnet login radius local\r”
expect ”#“
send “aaa authentication telnet enable radius local\r”
expect ”#“
send “aaa authentication ssh login radius local\r”
expect ”#“
send “aaa authentication ssh enable radius local\r”
expect ”#“
send “aaa authentication web login radius local\r”
expect ”#“
send “aaa authentication web enable radius local\r”
expect ”#“
send “aaa accounting update periodic 1\r”
expect ”#“
send “aaa accounting network start-stop radius\r”
expect ”#“
send “aaa accounting exec start-stop radius\r”
expect ”#“
send “aaa accounting system start-stop radius\r”
expect ”#“
send “aaa accounting commands stop-only radius\r”
expect ”#“
send “radius-server retransmit 5\r”
expect ”#“
send “radius-server key Sp7xyDrk\r”
expect ”#“
send “radius-server host 172.16.8.102 key Sp7xyDrk\r”
expect ”#“
send “wr m\r”
expect ”#“
send “ip default-gateway 10.137.64.1\r”
expect ”#“
send “wr m\r”
expect ”#“
send “exit\r”
expect ”#“
send “exit\r”
expect ”>“
send “exit\r”
expect ”?”
send “y\r”
expect “#“
exit
telnet.sh:
[root@jarvis ~]# cat /usr/local/bin/fullsetup2920/telnet.sh
#!/bin/bash
file=”/usr/local/bin/fullsetup2920/IP-list.csv”
cat $file | while read line
do
ipadd=`echo $line |cut -f 1 -d ,`
ipadd2=`echo $line |cut -f 2 -d ,`
netmask=`echo $line |cut -f 3 -d ,`
hostname=`echo $line |cut -f 4 -d ,`
/usr/local/bin/fullsetup2920/instructions.sh $ipadd $ipadd2 $netmask $hostname
#echo “$ipadd $ipadd2 $netmask $hostname”
done
#spawn send “\r”
IP-List will be:
[root@jarvis ~]# cat /usr/local/bin/fullsetup2920/IP-list.csv
10.143.108.50,10.137.65.3,255.255.252.0,SW03_R1-F-1-02S
10.143.108.51,10.137.65.4,255.255.252.0,SW04_R1-F-1-03S
10.143.108.52,10.137.65.5,255.255.252.0,SW05_R1-F-1-04S
10.143.108.53,10.137.65.6,255.255.252.0,SW06_R1-F-1-05S
10.143.108.54,10.137.65.8,255.255.252.0,SW08_R1-F0-02S
10.143.108.55,10.137.65.9,255.255.252.0,SW09_R1-F0-03S
10.143.108.56,10.137.65.10,255.255.252.0,SW10_R1-F0-04S
10.143.108.57,10.137.65.11,255.255.252.0,SW11_R1-F0-05S
10.143.108.58,10.137.65.12,255.255.252.0,SW12_R1-F0-06S
10.143.108.59,10.137.65.14,255.255.252.0,SW14_R1-F1-02S
10.143.108.60,10.137.65.15,255.255.252.0,SW15_R1-F1-03S
10.143.108.61,10.137.65.16,255.255.252.0,SW16_R1-F1-04S
10.143.108.62,10.137.65.17,255.255.252.0,SW17_R1-F1-05S
10.143.108.63,10.137.65.18,255.255.252.0,SW18_R1-F1-06S
10.143.108.64,10.137.65.19,255.255.252.0,SW19_R1-F1-07S
