yes, we can connect a transceiver XFP-10G-MM-SR in one side and SFP-10G-SR in other side.
Working in network field for last 10 years. I have also completed CCIE DC and a good exposure to datacenter technologies. If you need any assistance on Nexus/ACI, send me an email on rockingoa@gmail.com
Friday, 11 December 2020
Throughput license installation in ASR 1002-x
Sunday, 25 October 2020
Steps to establish a physical connection in ACI
To implement a physical connection in ACI, first define the following:
Friday, 25 September 2020
Host a SSL (https) website on Ubuntu
Below are the steps to host a website on port 80. In the below example 172.16.1.11 is the IP adddress on the Ubuntu server which will receive the customer traffic.
sudo a2enmod ssl
STEP 2: Create a directory which contatin the certifcate and key.
Sudo Su
mkdir /etc/apache2/ssl
STEP 3: Generate self sign certificate and key
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt
nano /var/www/html/172.16.1.12_all/index.html
<html>
<title>172.16.1.12_8080</title>
<h1>Welcome to 172.16.1.12_8080 Website</h1>
<p>Website on port 8080</p>
</html>
ctrl + X then press Y
Press Enter
STEP 4: Add below ServerName in apache2.conf file
/etc/apache2/apache2.conf file:
ServerName localhost
STEP 5: Add the website to the "SITES-AVAILABLE" FOLDER.
nano /etc/apache2/sites-available/172.16.1.12_all_ssl.conf
<VirtualHost 172.16.1.12:443>
ServerAdmin admin@localhost
ServerName 172.16.1.12
DocumentRoot /var/www/html/172.16.1.12_all
DirectoryIndex index.html
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key
</VirtualHost>
Press Enter
STEP 6: Publish the website on Ubuntu
sudo a2ensite 172.16.1.12_all_ssl
STEP 7: Restart Apache service
sudo service apache2 restart
STEP 8: Check the website syntax
apachectl configtest
Tuesday, 22 September 2020
Host a website on Ubuntu on multiple ports
Below are the steps to host a website on multiple ports. In the below example 172.16.1.11 is the IP adddress on the Ubuntu server which will receive the customer traffic.
STEP 1: Create a directory which will contain the HTML page of the website.
Sudo Su
mkdir /var/www/html/172.16.1.10_all
STEP 2: Create the index html file and add the HTML code in it
nano /var/www/html/172.16.1.10_all/index.html
<html>
<title>172.16.1.10</title>
<h1>Welcome to 172.16.1.10 Website</h1>
<body style="background-color:orange;">
</body>
<p>Website on port 80</p>
</html>
ctrl + X then press Y
Press Enter
STEP 4: Give Sufficient permission to the folder
chown -R www-data:www-data /var/www/html/172.16.1.10_all
STEP 5: Add the website to the "SITES-AVAILABLE" FOLDER.
nano /etc/apache2/sites-available/172.16.1.10_all.conf
<VirtualHost 172.16.1.10:*>
ServerAdmin admin@localhost
ServerName 172.16.1.10
DocumentRoot /var/www/html/172.16.1.10_all
DirectoryIndex index.html
ErrorLog ${APACHE_LOG_DIR}/80_error.log
CustomLog ${APACHE_LOG_DIR}/80_access.log combined
</VirtualHost>
ctrl + X then press Y
Press Enter
STEP 6: Publish the website on Ubuntu
a2ensite 172.16.1.10_all
STEP 7: Restart Apache service
systemctl restart apache2
Host a website on Ubuntu on port 80
Below are the steps to host a website on port 80. In the below example 172.16.1.11 is the IP adddress on the Ubuntu server which will receive the customer traffic.
STEP 1: Create a directory which will contain the HTML page of the website.
Sudo Su
mkdir /var/www/html/172.16.1.11_80
STEP 2: Create the index html file and add the HTML code in it
nano /var/www/html/172.16.1.11_80/index.html
<html>
<title>172.16.1.11_80</title>
<h1>Welcome to 172.16.1.11_80 Website</h1>
<p>Website on port 80</p>
</html>
ctrl + X then press Y
Press Enter
STEP 4: Give Sufficient permission to the folder
chown -R www-data:www-data /var/www/html/172.16.1.11_80
STEP 5: Add the website to the "SITES-AVAILABLE" FOLDER.
nano /etc/apache2/sites-available/172.16.1.11_80.conf
<VirtualHost 172.16.1.11:80>
ServerAdmin admin@localhost
ServerName 172.16.1.11
DocumentRoot /var/www/html/172.16.1.11_80
DirectoryIndex index.html
ErrorLog ${APACHE_LOG_DIR}/80_error.log
CustomLog ${APACHE_LOG_DIR}/80_access.log combined
</VirtualHost>
ctrl + X then press Y
Press Enter
STEP 6: Publish the website on Ubuntu
a2ensite 172.16.1.11_80
STEP 7: Restart Apache service
systemctl restart apache2
Monday, 21 September 2020
Host Multiple Websites on a Single Server with Apache on Ubuntu
Below config is to host multiple website which runs on different port on same server:-
Step1: Make two directories one for each port
mkdir /var/www/html/172.16.1.12_8080
mkdir /var/www/html/172.16.1.12_8081
Step2: Create index file for site on port 8080
nano /var/www/html/172.16.1.12_8080/index.html
<html>
<title>172.16.1.12_8080</title>
<h1>Welcome to 172.16.1.12_8080 Website</h1>
<p>Website on port 8080</p>
</html>
CTRL X then press Y
press Enter
Step3: Create index file for site on port 8081
nano /var/www/html/172.16.1.12_8081/index.html
<html>
<title>8081</title>
<h1>Welcome to 172.16.1.12_8081 Website</h1>
<p>Website on port 8081</p>
</html>
CTRL X then press Y
press Enter
Step4: Assign priviledge to sites
chown -R www-data:www-data /var/www/html/172.16.1.12_8080
chown -R www-data:www-data /var/www/html/172.16.1.12_8081
Step5: Add 8080 site
nano /etc/apache2/sites-available/172.16.1.12_8080.conf
<VirtualHost 172.16.1.12:8080>
ServerAdmin admin@localhost
ServerName 172.16.1.12
DocumentRoot /var/www/html/172.16.1.12_8080
DirectoryIndex index.html
ErrorLog ${APACHE_LOG_DIR}/8080_error.log
CustomLog ${APACHE_LOG_DIR}/8080_access.log combined
</VirtualHost>
CTRL X then press Y
press Enter
Step6: Add 8081 site
nano /etc/apache2/sites-available/172.16.1.12_8081.conf
<VirtualHost 172.16.1.12:8081>
ServerAdmin admin@localhost
ServerName 172.16.1.12
DocumentRoot /var/www/html/172.16.1.12_8081
DirectoryIndex index.html
ErrorLog ${APACHE_LOG_DIR}/8081_error.log
CustomLog ${APACHE_LOG_DIR}/8081_access.log combined
</VirtualHost>
CTRL X then press Y
press Enter
Step7: Enable sites
a2ensite 172.16.1.12_8080
a2ensite 172.16.1.12_8081
Step7: Restart Apache
systemctl restart apache2
Sunday, 20 September 2020
Stuck in Configuration Utility restarting - Big IP
1. Log in to BIG-IP .
2. Make a backup using below command :
/config/httpd/conf.d/proxy_ajp.conf cp /config/httpd/conf.d/proxy_ajp.conf /config/httpd/conf.d/proxy_ajp.conf.bk
3.Edit /config/httpd/conf.d/proxy_ajp.conf
Below is the command to make the changes. After the command press "i" (insert) to enable the editing and once the changes are done, enter esc and type :wq!(write and quite).
vi /config/httpd/conf.d/proxy_ajp.conf
Locate the following two "#ProxyPass" lines and the below command .
#ProxyPass /tomcat/ ajp://localhost:8009/
#ProxyPass /examples/ ajp://localhost:8009/jsp-examples/
ProxyTimeout 10 #<----- Add this line
4.Save and close the file.
5.Restart httpd and tomcat.
bigstart restart httpd tomcat
Wednesday, 16 September 2020
F5 default credentials and some interesting Facts.
Below are the default credentials for F5. you can change the credentials during initial setup wizard.
Cli
Username: root
Password: default
GUI
Username:admin
Password:admin
Interesting Fact:-
- Root and admin username cannot be deleted from F5.
- BY default, username admin doesnot have access to the CLI but we can assign either advance shell or TMOS access to the "admin" user.
- No GUI access can be given to user "root"
Global NTP servers
NTP is a UDP based service which works on port number 123.It is recommended to use pool.ntp.org to find an NTP server.
All zones in All Pool Servers.
- Africa — africa.pool.ntp.org
- Antarctica — antarctica.pool.ntp.org
- Asia — asia.pool.ntp.org
- Europe — europe.pool.ntp.org
- North America — north-america.pool.ntp.org
- Oceania — oceania.pool.ntp.org
- South America — south-america.pool.ntp.org
Below is the command to check the ntp status on respective platforms.
A. Windows
w32tm /query /peers
B. Ubuntu
/etc/ntp.conf
Wednesday, 9 September 2020
DNS root server list - A-M
Wednesday, 5 August 2020
SNMPv3 config on Cisco routers/Switches
Monday, 3 August 2020
Enable Password vs Enable Secret command on cisco routers/switches
Thursday, 18 June 2020
uRPF and its modes : Strict vs Loose
Unicast RPF works in one of below modes:
1. Strict mode: Router will perform two checks:.
A. Router checks the routing entry for the source address of the packet and will drop the packet in case no route is present on the routing table for the source address.
B. Router will ensure that the source of incoming packet is reachable via same interface. Router will drop the packet in case source address is learned via different interface than from the one, packet in ingress ed.
Command:-
Int eth1/1
ip verify unicast reverse-path --<<< Old command but still available on some platforms
or
IP verify unicast source reachable-via rx
ip verify unicast reverse-path (Unicast RPF)
2. Loose mode: Only make sure that route for the source address is present in the routing table.
Int eth1/1
IP verify unicast source reachable-via Any
Note:- Above matching criteria is not applicable for default route and will not allow traffic where source is only matching the default route. the " Allow-default" keyword is used to change this behaviour and traffic will be allowed where source address is matching only the default route.
Wednesday, 17 June 2020
BGP: x.x.x.x Active open failed - no route to peer, open active delayed 9216ms (35000ms max, 60% jitter)
I was working on an issue and got above logs while doing the debug of BGP on the cisco router.
Below are the two thing which we need to test to resolve such issues.
1. Specific route for the BGP neighbor IP address. BGP neighborship is dependent on it and default route won't work.
2. Ebgp multihop. Make sure to configure the eBGP multihop command while making the ebgp neighborship on the indirectly connected routers.
Monday, 2 March 2020
Cisco Traditional Vs Smart Licensing
Traditional (node locked) licencing
|
Smart (dynamic) licencing
|
Manual individual license procurement and installation
|
Device initiates a call home and requests the licenses it needs.
|
Node-locked licences - license is associated
with a specific device.
|
Pooled
licences - licences are company account-specific, and can be used with any
compatible device in your company. You can activate or deactivate different
types of licenses on the device without actually installing a license file on
the device.
|
No common install base location to view
licenses purchased or software usage trends
|
Licenses are stored securely on Cisco servers accessible all the time.
|
No easy means to transfer licenses from one
device to another.
|
Licenses
can be moved between product instances without a license transfer. This
greatly simplifies the reassignment of a software license as part of the
Return Material Authorization (RMA) process.
|
Limited visibility into all software
licenses being used in the network. Licenses are tracked only on per node
basis.
|
Complete view of all Smart Software Licenses used in the network using
a consolidated usage report of software licenses and devices in one
easy-to-use portal.
|
Tuesday, 18 February 2020
IP NAT inside source vs IP NAT outside source
IP NAT inside source vs IP NAT outside source
For more information please refer to below cisco link
https://www.cisco.com/c/en/us/support/docs/ip/network-address-translation-nat/13773-2.html
Friday, 14 February 2020
ISR 4331/4531 features in Evaluation mode
Below are the features available in Evaluation mode.
#sh license feature
Feature name Enforcement Evaluation Subscription Enabled RightToUse
appxk9 yes yes no no yes
uck9 yes yes no no yes
securityk9 yes yes no yes yes
ipbasek9 no no no yes no
cme-srst yes yes no no yes
hseck9 yes no no yes no
throughput yes yes no no yes
internal_service yes no no no no
How to enable RTU package on ISR 4331/4531
config t
license accept end user agreement
yes
exit
license right-to-use move appxk9
config t
license boot level appxk9
end
wr mem
How to enable evaluation license
license feature appxk9
Friday, 7 February 2020
Catalyst 9000 License
License Level
|
Network Stack offer (Perpetual and embedded)
|
Cisco DNA Software Subscription offer (Term
based)
|
-E
|
Network Essentials
|
Cisco DNA Essentials (3, 5, or 7 years)
|
-A
|
Network Advantage
|
Cisco DNA Advantage (3, 5, or 7 years)
|
Monday, 3 February 2020
Install python and Paramiko on windows machine
Thursday, 30 January 2020
3850 stack requirement
Whereas License(LAN base, IP base or IP services( and IOS XE version must be same on all stack switches. for example, Catalyst 3850 switches with LAN Base feature can only be stack with other 3850 LAB switches.
Maximum 8 switches can be part of single stack.
Cisco IPN configuration and hardware requirement
Below are the configuration requirement for IPN network.
1. Routed Sub-Interface with Vlan-4 : IPN device interface which is connected to Spine must be a sub interface and tag to vlan 4. We cannot use routed port or SVI for the interconnection. Also no other vlan tag can be used.
2. IPN device must support 9150B mtu and it is a mandatory requirement. Make sure all device in the path must support jumbo frames. Otherwise MP-BGP will flap between the SPINes of different PODs.
3. IPN device must support PIM BiDIR. It is used to carry BUM (Broadcast, unknown unicast and multicast) traffic.
4. OSPF protocol. Only OSPF protocol can be configured between IPN and ACI fabric (Spines). No other protocol can be used.
5. DHCP relay must be configured if you want to perform the zero touch deployment of POD 2.
6. QOS POlicy:- It is not a madatory requirement but it is good to prioritize the Multipod control packets.
Hardware requirement:-
IPN device can be any box which can support aforementioned features. generally below hardware are used for IPN.
1. Nexus 7000
2. ASR 1K
3. N3K-C3548P-10GX
N3K-C3172PQ-10GE cannot be used as IPN device.
Saturday, 25 January 2020
SSH accessibility check of multiple cisco router and save the output in a file
import time
import sys
import logging
import socket
remote_conn_pre = paramiko.SSHClient()
remote_conn_pre.set_missing_host_key_policy(paramiko.AutoAddPolicy())
f= open("output.txt","w+")
ips = [i.strip() for i in open("ip.txt")]
import logging
logging.getLogger('paramiko.transport').setLevel(logging.DEBUG)
paramiko.util.log_to_file("logs")
for ip in ips:
try:
remote_conn_pre.connect(ip, username='test', password='test', timeout=4, look_for_keys=False, allow_agent=False)
remote_conn = remote_conn_pre.invoke_shell()
print (ip + ' === Device Reachable')
f.write(ip + ' === Device Reachable'"\n")
time.sleep(2)
except paramiko.AuthenticationException:
print ip + ' === Bad credentials'
f.write(ip + ' === Bad credentials'"\n")
time.sleep(2)
except paramiko.SSHException:
print ip + ' === Issues with ssh service'
f.write(ip + ' === Issues with ssh service'"\n")
time.sleep(2)
except socket.error:
print ip + ' === Device unreachable'
f.write(ip + ' === Device unreachable'"\n")
time.sleep(2)
f.close()
SSH accessibility check on mulitple routers
Make a notepad contain IP address of the routers where we need to check the SSH accessibility.
import paramiko
import time
import sys
import logging
import socket
remote_conn_pre = paramiko.SSHClient()
remote_conn_pre.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ips = [i.strip() for i in open("ip.txt")]
for ip in ips:
try:
remote_conn_pre.connect(ip, username='test', password='test', timeout=4, look_for_keys=False, allow_agent=False)
remote_conn = remote_conn_pre.invoke_shell()
print (ip + ' === Device Reachable')
remote_conn.send("\n")
time.sleep(2)
except paramiko.AuthenticationException:
print ip + ' === Bad credentials'
except paramiko.SSHException:
print ip + ' === Issues with ssh service'
except socket.error:
print ip + ' === Device unreachable'
Friday, 24 January 2020
Jumbo frame configuration on Nexus
mtu 9216
no switchport
mtu 9216
class type network-qos class-default
mtu 9216
system qos
service-policy type network-qos jumbo
Nexus(config-if)#mtu 9216
Wednesday, 15 January 2020
How to create BD in Cisco ACI
2. Name BD and map the VRF to this BD. Press NEXT to proceed.
5. You can see subnet details will be displayed in L3 configuration section. Click NEXT to Proceed.
6. Click Finish to create the BD
Tuesday, 14 January 2020
How to create VRF in Cisco ACI
2. Enter the VRF name and keep the other settings on default. In this step you also get an option to create the BD. It is by default checked. Press Next to create the VRF.
How to Create Tenant on Cisco ACI
Adding a tenant to the fabric is a non-impacting change and can be done at any moment.