If you run Juniper switch products, you will soon be noticing some command changes that were recently introduced. It is important that you understand and are prepared for these changes. Juniper calls these changes "Enhanced Layer 2 Software Support (ELS).
Why is Juniper making changes? The EX line of switches was launched with a different command set from the MX line. This has caused some confusion and some have attributed it to cracks in the "One Junos" foundation. Juniper is moving to standardize more of the commands across those platforms now.
What is Changing? As of this writing, only the EX9200, EX4300, QFX3500, QFX3600 and QFX5100 series are being affected. Primarily the changes affect commands under that were previously under the 'ethernet-switching-options', 'vlans' and 'family ethernet-switching' stanzas.
The transition-Some of these products, such as the EX4300 and EX9200 launched with only the new command set, where others, such as the QFX3500, will get the changes newer versions (13.2x50). It is important to pay attention to the changes because the upgrade to firmware with ELS commands requires some manual steps and old configurations WILL BREAK.
If you are upgrading an affected switch to the new code with ELS you will need to modify the configuration to the new structure. Juniper has provided a translator tool (registration required), but you will need to manually apply the changes to your switch after the upgrade.
Juniper's summary of the upgrade goes something like this:
1. Delete incompatible commands hierarchies
2. upgrade switch
3. Paste in new commands
As you can see it will be important to back up your configs, have a back-out plan, have console access and test in a lab, etc, before doing this in production.
A few of the changes highlighted-There are many changes that can affect the functionality of your switch, but here are 5, that if you miss, will probably take your whole switch offline.
1. Layer 3 Vlan interfaces (previously RVIs) are now called Integrated Routing and Bridging (IRBs). 'VLAN.x' interfaces change to 'IRB.x' interfaces.
set vlans vlan123 l3-interface vlan.123
set interfaces vlan.123 family inet address x.x.x.x
set vlans vlan123 l3-interface irb.123
set interfaces irb.123 family inet address x.x.x.x
2. VLANS must be assigned to interfaces under the interface stanza. Junos used to allow you to assign VLANS from the interface stanza or under the VLAN stanza, but this has been simplified.
This command is deprecated:
set vlans vlans123 interface ge-0/0/0
3. 'port-mode becomes 'interface-mode'. This command is used to toggle between trunk and access ports
set interface ge-0/0/0.0 family ethernet-switching port-mode trunk
set interfaces ge-0/0/0.0 family ethernet-switching interface-mode trunk
4. VOIP options-If you have any IP phones with tagged VLANs you'll need to move the VOIP configuration from under 'ethernet-switching-options' to 'switch-options'
set ethernet-switching-options voip interface ge-0/0/0
set switch-options voip interface ge-0/0/0
5. Native VLANs and speed/duplex are configured
set interfaces ge-0/0/0 speed 100m
set interfaces ge-0/0/0 link-mode full-duplex
set interfaces ge-0/0/0 native-vlan-id 1
The full list of changes can be found in Juniper's documentation, which includes a full table of all of the changes.
Don't forget that you will need to update your device templates, your automation scripts, your config management software and anything else that relies on the static commands or hierarchies.