Believe me or not, knowing only Cisco and Juniper is not enough to secure your position for current network industry. Big network revolution has came, maybe you also aware about that. You are not supposed to sit and type command to a network device anymore, but instead using an automation method. Imagine that you need to configure the same thing like NTP or some basic configuration into hundreds or even thousands of network devices for one data center or ISP. It’s pain right? That’s why there are many scripting languages have been built such as Ansible, Python and many others to help you in those kind of situations. This is one small part of the revolution. Then what is the big change? Well, the big one is that, you are now be able to choose any Operating System you want to deploy on many kind of not-very-expensive hardwares (compared to Cisco and Juniper) with massive speed and capacity. Hmmm…..okay! Well, let me give you some more words. 🙂
Introduction to Open Networking
Opposite to Lock/Close Networking, the term Open Networking is defined. Instead of using proprietary features of one vendor which is locked by that vendor, you are now be able to choose any Network Hardware and Operating System combination you want for your switch and router. Seriously! Yes, you read it right! Example, you can install Juniper Operating System onto a Dell switch or probably HP switch…depending on your own choice. Many network vendors have already built their Operating System to support those bare metal hardwares such as Juniper, Cisco, Cumulus VX and many more. For the hardware part, you can choose from HP, Dell, Edge-Core, Mellanox, Accton, QuantaMesh and more.
Experience with Open Networking
In this article, I am not only introduce you what ON is but also to share you my own experience about deploying and configuring Cumulus Linux onto a Dell switch.
Cumulus Linux is one of the most popular Operating System of Open Networking. It is built by Cumulus Networks (an amazing team and support) from Debian kernel. You know, many big companies in the industry are running Cumulus Linux for years such as Facebook (they are going to build their own OS too), Amazon and many others. You can imagine how easy it is to deploy configuration with automation script to many switches and routers because they are not quite different from Linux OS.
For the hardware part, Dell produces the amazing White Box Switching such as S4048 and Z9100 ON. It is 90% cheaper than normal network vendors do and 10 times faster in speed and capacity with 40GbE and 100GbE. I am really excited to tell you all about this. Look at below image for Z9100ON.
Now let me give you some sample configuration I did for one of my customers on Dell S4048.
- Check and verify hardware version
root@CORE01:~$ sudo decode-syseeprom TlvInfo Header: Id String: TlvInfo Version: 1 Total Length: 112 TLV Name Code Len Value -------------------- ---- --- ----- Product Name 0x21 7 S4048ON Part Number 0x22 6 0MXXXX Serial Number 0x23 20 CN0MXXXXXXXXXXXXXXXX Base MAC Address 0x24 6 XX:XX:XX:XX:XX:XX Manufacture Date 0x25 19 06/21/2015 10:56:21 Label Revision 0x27 3 A00 MAC Addresses 0x2A 2 256 Manufacturer 0x2B 5 28298 Manufacture Country 0x2C 2 CN Service Tag 0x2F 7 D4FQX42 Vendor Extension 0xFD 7 0x00 0x00 0x02 0xA2 0x2D 0x46 0x46 CRC-32 0xFE 4 0xA7C2268B (checksum valid)
- Configure VLAN 200 and assign an IP address to it then allow it on trunk (swp1)
Interface configuration will be in /etc/network/interfaces
auto swp1 iface swp1 auto br200 iface br200 bridge-ports swp1.200 address 10.10.200.1/24 bridge-stp on alias VLAN200-TO-CORE02Then you have to restart the interfaces by using below command so that the configuration takes affect.
- Configure OSPF
First thing first, you need to enable zebra and OSPF services in /etc/quagga/daemons by changing value to “yes”.
Then restart the service by using below command.
sudo service quagga restart
Also, similar to Linux Operating System, you have to uncomment (#) net.ipv4.ip_forward=1 in /etc/sysctl.conf so that it can forward IPv4 traffic between switch port.
Now let’s go into quagga and configure OSPF. The command is very similar to Cisco IOS.
root@CORE01:~# sudo vtysh configure terminal Hello, this is Quagga (version 0.99.23.1+cl3u2). Copyright 1996-2005 Kunihiro Ishiguro, et al. CORE01# configure terminal CORE01(config)# router ospf CORE01(config)# ospf router-id 10.10.200.1 CORE01(config)# network 10.10.200.0/24 area 0.0.0.0 CORE01(config)# default-information originate CORE01(config)# do copy running-config startup-config
As you can see, I did not define any OSPF process ID. If I do, the OSPF does not work.
One last thing, dont forget drop us a comment so that we know about you.