Skip to content
Townsend Networks
How-to guidePublished

Build a Juniper EX2300, EX3400 or EX4300 Virtual Chassis

Models covered: EX2300, EX2300-C, EX2300-48T, EX2300-48P, EX3400, EX3400-24T, EX4300, EX4300-48T, EX4300-48P, EX4300-48MP

Tools and parts needed

  • QSFP+ DAC cables for the QSFP+ VCPs (in-rack)
  • SFP+ transceivers for SFP+ VCPs (SFP transceivers will not work)
  • A console connection to the primary switch for EZSetup
  • The serial number of every member, for a preprovisioned stack

The maker's warnings

  • All member switches must run the same version of Junos OS, or the Virtual Chassis does not form.[S1]
  • A switch removed from a mixed EX4300 stack keeps ieee-clause-82 port mode until you disable it, and its VCPs will not connect in a new stack until you do.[S1]
  • Use commit synchronize, not commit, so the change is saved on both Routing Engines.[S1]
  • Juniper's technical support does not support third-party optical modules and cables that are not qualified or supplied by Juniper.[S3]

Steps

  1. Step 1: Power on only the primary

    Power on only the switch that you will use as the primary switch, with the others off and the stack cables not yet connected.[S1]

  2. Step 2: Mixed EX4300 stacks only: set mixed mode

    If the stack mixes EX4300-48MP and other EX4300 models, set the primary into mixed mode and let it reboot: request virtual-chassis mode mixed reboot.[S1]

  3. Step 3: Run EZSetup on the primary

    Run the EZSetup program on the primary switch, specifying the identification parameters. What you set here applies to the entire Virtual Chassis.[S1]

  4. Step 4: Optional: one management address for the stack

    Give the stack a virtual management Ethernet (VME) interface for out-of-band management: set interfaces vme unit 0 family inet address followed by your address and mask.[S1]

  5. Step 5: Optional: choose the primary and backup

    Under [edit virtual-chassis], give the intended primary and backup the same high value, for example set member 0 mastership-priority 255 and set member 1 mastership-priority 255.[S1]

  6. Step 6: Two-member stacks: turn off split detection

    For a two-member Virtual Chassis, Juniper recommends disabling the split and merge feature with set no-split-detection.[S1]

  7. Step 7: Commit

    Commit the configured items.[S1]

  8. Step 8: Power on the other members

    Power on the other member switches. In a mixed EX4300 stack, set each EX4300-48MP with request virtual-chassis mode mixed reboot and each other EX4300 with request virtual-chassis mode ieee-clause-82 mixed reboot.[S1]

  9. Step 9: Make the uplink ports VCPs where needed

    On EX2300 members, or wherever you stack over SFP+ ports, convert each port on each member, for example request virtual-chassis vc-port set pic-slot 1 port 0. EX3400 and EX4300 QSFP+ ports are VCPs already.[S1]

  10. Step 10: Cable the members

    Cable the ports interconnecting the members if they were not connected earlier.[S1]

  11. Step 11: Check the stack

    Run show virtual-chassis and confirm every member shows Prsnt. To change a member ID the primary assigned, use request virtual-chassis renumber.[S4]

A Virtual Chassis joins several Juniper EX switches so they are managed as one, with two of them acting as the Routing Engines. This guide covers the three families Juniper documents together for this job, the EX2300, EX3400 and EX4300: which switches may join, which ports and cables carry the stack, how the roles are chosen, and the checks after it forms. The numbered steps on this page are Juniper's nonprovisioned method.

Which switches can join which

  • EX2300: up to 4 members, and starting in Junos OS Release 18.4R1, you can combine EX2300, EX2300-C, and EX2300 multigigabit switches in the same non-mixed Virtual Chassis.
  • EX3400: up to 10 members, and you can interconnect EX3400 switches only with other EX3400 switches in a Virtual Chassis (no mixed mode).
  • EX4300: up to 10 members; any EX4300 models other than the multigigabit EX4300-48MP stack together without extra settings, and the EX4300-48MP stacks with its own kind.
  • Mixing the EX4300-48MP with other EX4300 models needs mixed mode, the ieee-clause-82 port mode on the other models, and EX4300-48MP switches in the Routing Engine roles.

Whatever the family, all member switches must be running the same version of Junos OS to form a Virtual Chassis, so bring every switch to one release before you cable anything.

Which ports carry the stack

On the EX3400 and EX4300 the job is mostly done at the factory. The QSFP+ uplink ports on EX3400 and EX4300 switches support 40-Gbps speeds, and these ports are set as VCPs by default, so you don't need to explicitly configure them. An EX4300-48T, for example, has four built-in QSFP+ ports alongside its 48 copper ports. Juniper calls those default ports the simplest way to build an EX3400 or EX4300 stack.

The EX2300 is different: EX2300 switches do not have any ports that are configured by default as VCPs, so you must explicitly configure the ports you want to use. On the EX2300-48T and EX2300-48P those are the four built-in 10-Gigabit Ethernet uplink ports on the front panel, which Juniper says you can configure into VCPs to interconnect EX2300 switches into a Virtual Chassis. On any of the three families, SFP+ uplink ports can be made into VCPs; they run at 10-Gbps speeds and can connect switches that are up to 6.2 miles (10 km) apart, which is how members in different wiring closets are joined. Those ports must hold SFP+ transceivers, because you can't form a Virtual Chassis using ports that have SFP transceivers installed. One exception: the four built-in 10-Gbps SFP+ ports on 32-port EX4300 switches can't be VCPs.

More than one link between two members is allowed for bandwidth, and links with identical speeds automatically form a VCP link aggregation group (LAG).

The cables between members

Inside a rack, the usual link between QSFP+ VCPs is a QSFP+ direct attach copper (DAC) cable, which Juniper describes as suitable for in-rack connections between QSFP+ ports on EX3400 and EX4300 switches, among others. These passive cables are hot-removable and hot-insertable and are designed for data rates up to 40 Gbps. Juniper recommends that you use only QSFP+ DAC cables purchased from Juniper Networks with your Juniper Networks device. For members farther apart, SFP+ optics in SFP+ VCPs carry the link, as above.

Nonprovisioned or preprovisioned

Juniper offers two ways to assign roles. In a nonprovisioned configuration the primary sequentially assigns a member ID to other member switches, and the role is decided by primary-role priority. Every switch starts at the default primary-role priority of 128, the switches with the highest values take the primary and backup roles, and a switch with a primary-role priority of 0 never assumes the primary or backup role. When priorities are equal, the switches that have been powered on the longest assume the primary and backup roles in most cases.

A preprovisioned configuration ties each member ID and role to the switch's serial number instead. You set preprovisioned under [edit virtual-chassis], then list each switch, for example set member 0 serial-number abc123 role routing-engine. Serial number values are case-sensitive, and the show chassis hardware command or the serial number label gives you each one. With preprovisioning you can power on the member switches in any order, but you cannot modify the primary-role priority.

After the stack forms

Run show virtual-chassis to see every member: in a nonprovisioned stack Prsnt marks a member that is currently connected and NotPrsnt a member ID that has been assigned but is not currently connected. In a preprovisioned stack, Unprvsnd flags a switch that is cabled in but not in the configuration file. On EX Series stacks the FPC number refers to the member ID assigned to the switch, so each member's ports carry its member ID as their FPC number.

Two defaults catch people out. The interfaces on member switch 0 start in the default VLAN, but the interfaces on all other member switches are not placed into any VLAN, so you must configure a VLAN on them before they pass traffic. On an EX4300 stack, STP is disabled on all interfaces except the interfaces on member switch 0 until some type of spanning-tree protocol is enabled. From then on, save changes with commit synchronize rather than simply commit, so both Routing Engines hold the same configuration.

What we see at Townsend

Buyers ask us for these switches by exact model, and the EX2300-48T and the EX4300-48T were both named in requests in the past month. We have the EX4300-48T, the EX3400-24T and the EX2300-48P in stock, so a stack of matching members can ship together. Our weekly eBay read showed new EX3400-48T asking prices easing between the last two reads, and used EX2300-48P and EX4300 listings outnumbering new ones. Browse the EX4300 shelf, the EX3400 shelf and the EX2300 shelf for more members.

Sources

Checked against the maker's documents on .

  1. S1Configuring an EX2300, EX3400, EX4100, EX4100-F, EX4300, or EX4400 Virtual ChassisJuniper Networks · Document: Virtual Chassis User Guide for Switches (Junos OS) · Revision: Topic page dated 2025-03-04 · Section: Requirements and guidelines; Configuring with a Nonprovisioned Configuration File; Configuring with a Preprovisioned Configuration File · March 4, 2025

  2. S2EX4300 System OverviewJuniper Networks · Document: EX4300 Switch Hardware Guide · Revision: Topic page dated 2025-07-28 · Section: EX4300 Switch Models; 48-Port EX4300 Switches; Virtual Chassis ports · July 28, 2025

  3. S3EX4300 Network Cable and Transceiver PlanningJuniper Networks · Document: EX4300 Switch Hardware Guide · Revision: Topic page dated 2024-10-26 · Section: QSFP+ Direct Attach Copper Cables for EX Series Switches · October 26, 2024

  4. S4show virtual-chassisJuniper Networks · Document: Junos OS CLI Reference · Revision: Topic page dated 2023-11-19 · Section: Description; Output Fields (Status, Member ID) · November 19, 2023

  5. S5EX2300 System OverviewJuniper Networks · Document: EX2300 Switch Hardware Guide · Revision: Topic page dated 2025-07-28 · Section: EX2300 front panel · July 28, 2025

  6. S6EX3400 System OverviewJuniper Networks · Document: EX3400 Switch Hardware Guide · Revision: Topic page dated 2025-07-28 · Section: EX3400 switch models · July 28, 2025

In stock now

EX4300-48T Juniper Switch, Front-to-Back, Refurbished, 48x 1GbE RJ45 and 4x 40GbE QSFP+

EX4300-48T

EX4300-48T Juniper Switch, Front-to-Back, Refurbished, 48x 1GbE RJ45 and 4x 40GbE QSFP+

In stock

$145Ships same day
EX3400-24T Juniper Switch, Front-to-Back, Refurbished, 24x 1GbE RJ45 and 2x 40GbE QSFP+

EX3400-24T

EX3400-24T Juniper Switch, Front-to-Back, Refurbished, 24x 1GbE RJ45 and 2x 40GbE QSFP+

In stock

$405Ships same day
EX2300-48P Juniper Switch, AC Power, Refurbished, 48x 1GbE PoE+ RJ45 and 4x 1/10GbE SFP+

EX2300-48P

EX2300-48P Juniper Switch, AC Power, Refurbished, 48x 1GbE PoE+ RJ45 and 4x 1/10GbE SFP+

In stock

$155Ships same day
EX4300-48MP Juniper Switch, Front-to-Back, 48x 1GbE PoE++ RJ45 (24 × 10GbE) and 4x 40GbE QSFP+

EX4300-48MP

EX4300-48MP Juniper Switch, Front-to-Back, 48x 1GbE PoE++ RJ45 (24 × 10GbE) and 4x 40GbE QSFP+

In stock

$2,465Ships same day

Need help planning your next move?

Tested, warrantied hardware with real availability, and cash offers for decommissioned gear. Quotes answered by a human.