network components, Uncategorized

OSPF limitation on Aruba 3810M-16SFP+ (JL075)

Per test result, on the mentioned switch (on firmware KB.16.05.0011) it is not possible to add more than 8 summary routes per one OSPF area (all other summary statements for the area will be rejected):

OSPF_limitation_on_JL075

Based on that, Aruba 3810M-16SFP+ (JL075) better not to choose if it is expected more than 8 summary routes per one OSPF area. Due to such limitation more prefixes may come to provider, which will do charging per package defining prefixes amount.

automation, configuration, network components, scripting, Uncategorized

script on expect language to push batch changes to cisco and aruba switches / routers

Notes about the script:

– in such particular case script pushes new syslog server 10.10.10.21 to configuration and saves config file
– script works almost without changes on cisco and aruba (on cisco though syntax is “logging host <…>” on aruba it is “logging <…>”)
– script will terminate itself with error if it will be not able to establish ssh to any of mentioned switches/routers where it needs to do changes
– logging from aruba is a mambo-jumbo and not accepted as a solution (the same result I get if doing logging via tee command of Expect script and with Expect’s logging possibility by log_file command (in my script its log_file -a $Directory/session_$host.log) )
– script expects that directory /tmp/logs exists, hence either it should be created manually or by adjusting provided script
– “log_file” command in script closes logging for each host, otherwise I got complaints from Expect related to not closed logging
– script reads IP addresses of each aruba / cisco switch or router from a file, which is given as a parameter to a script:

case for cisco
./set_syslog_on_cisco_v1.0.ex /tmp/cisco.txt | tee /tmp/cisco_syslog.log

case for aruba
./set_syslog_on_aruba_v1.0.ex /tmp/aruba.txt | tee /tmp/aruba_syslog.log

below is example of script for aruba case, for cisco case one line should be changed:

compare

 

#!/usr/bin/expect -f

set timeout 20

set file [lindex $argv 0];

set f [open “$file”]

set hosts [split [read $f] “n”]

close $f

foreach host $hosts {

if {$host != “”} {

send “echo host is $hostr”

sleep 2

set Username “your_username”

set Password “your_password”

set Directory /tmp/logs

log_file -a $Directory/session_$host.log

send_log “### /START-SSH-SESSION/ IP: $host @ [exec date] ###r”

spawn ssh -o “StrictHostKeyChecking no” $Username@$host

expect “*assword: ”

send “$Passwordr”

expect “#”

send “conf tr”

expect “(config)#”

send “logging 10.10.10.21r”

expect “(config)#”

send “endr”

expect “#”

send “wr memr”

expect “#”
send “r”

send “logoutr”

sleep 2

send_log “r### /END-SSH-SESSION/ IP: $host @ [exec date] ###r”

log_file;
}
}

network components, network design, wireless topics

Connection of Cisco WLC and Aruba switch

It is a fact that Cisco WLCs per their design supports only LAG type or protocol which has no negotiation (in this aspect LAG considered as non-LACP and non-PaGP etherchannel technique, in some documentation though LAG (link aggregation groups) may be considered as a general term for all types of protocols to build etherchannel ). LAG on Cisco switches can be recognized by null in the “protocol” field, as shown below:

etherchannel Pic.1 – Po1,Po2 – LAG etherchannels

In Lab environment following hardware was used and connected:

etherchannel for cisco WLC

Pic.2 – Lab topology to test LAG support by Aruba switch

Configuration on Cisco WLCs (enabled LAG) and on Aruba core2  L3 switch are shown below:

LAG_WLC

Pic3 – LAG settings on WLC1

LACP_Aruba

Pic4 – LACP configuration and verification on Aruba core2  L3 switch

Ping and SSH from core1 to WLC via such etherchannel were successful. Per such example, Aruba automatically negotiates LACP or LAG based on what is configured on the other end.

configuration, network components, Uncategorized

Linux for console connection to network devices

USB-RS232_

I’ve noticed that my old USB-to-RS232 converter is not recognized by windows10 (no related driver and COM port does not appear when converter is plugged). On vendor’s site  no more support starting from windows8.

However modern Linux supports this converter without any effort. Here are steps how with help of computer with Linux install Linux on USB memory stick and use USB-to-RS232 converter with help of such Linux:

1) download fresh ISO version of Linux distro, e.g. I’ve done it with LinuxMint

2)   plug USB memory stick, identify which /dev/sd it is associated (with help of /var/log/syslog or lshw utility)

sudo umount /dev/sd  
sudo dd bs=4M if= of=/dev/sd conv=fdatasync

In my particular example USB has been identified as /dev/sdb and I used following dd command (without bs size parameter, which is used to speed up the process):

sudo dd of=Downloads/linuxmint-19.1-xfce-64bit.iso of=/dev/sdb

this takes ~10-15 minutes, command will show nothing till it finish copy data to USB stick. After that, live system on USB memory stick is ready.

3)  computer, which will be used for console connection, should be booted up into system, which has been installed in USB memory stick. By default LinuxMint does not have old good console program “minicom”,  hence it is required to connect to the internet and issue command

sudo apt install minicom

4) after minicom has been installed, it is needed to plug USB-to-RS232 converter, identify type device file /dev/ttyUSB  for it:

sudo dmesg | grep tty

in my system it was /dev/ttyUSB0:

tty-usb-converter.png

5)  final step: run minicom, instruct it which /dev/ttyUSB is associated to USB-to-RS232 converter and set speed to 9600 instead of default value 115200 shown below on the picture. Afterwards network device can be configured via this converter (you will see console responses of the network device if all done correctly):

sudo minicom -s

minicom parameters

Network device is asking for authentication and ready for configuration:

minicom configure network device