annotations:
  - border_color: '#EFF48C'
    border_radius: 0
    border_style: ''
    color: '#EFF48C'
    thickness: 1
    type: rectangle
    x1: -520.0
    y1: -200.0
    x2: 320.0
    y2: 280.0
    z_index: 0
  - border_color: '#00000000'
    border_style: ''
    color: '#808080FF'
    rotation: 0
    text_bold: false
    text_content: ''
    text_font: monospace
    text_italic: false
    text_size: 12
    text_unit: pt
    thickness: 1
    type: text
    x1: 40.0
    y1: -360.0
    z_index: 1
  - border_color: '#86F6C2'
    border_radius: 0
    border_style: ''
    color: '#86F6C2'
    thickness: 1
    type: rectangle
    x1: 120.0
    y1: -200.0
    x2: 320.0
    y2: 280.0
    z_index: 0
  - border_color: '#D0A3F9'
    border_radius: 0
    border_style: ''
    color: '#D0A3F9'
    thickness: 1
    type: rectangle
    x1: -200.0
    y1: 120.0
    x2: 320.0
    y2: 200.0
    z_index: 0
  - border_color: '#00000000'
    border_style: ''
    color: '#050000'
    rotation: 0
    text_bold: true
    text_content: HR-Team
    text_font: cursive
    text_italic: false
    text_size: 20
    text_unit: pt
    thickness: 1
    type: text
    x1: -440.0
    y1: -80.0
    z_index: 2
  - border_color: '#00000000'
    border_style: ''
    color: '#050000'
    rotation: 0
    text_bold: true
    text_content: Managment
    text_font: cursive
    text_italic: false
    text_size: 20
    text_unit: pt
    thickness: 1
    type: text
    x1: -120.0
    y1: 160.0
    z_index: 2
  - border_color: '#00000000'
    border_style: ''
    color: '#808080FF'
    rotation: 0
    text_bold: false
    text_content: ''
    text_font: monospace
    text_italic: false
    text_size: 12
    text_unit: pt
    thickness: 1
    type: text
    x1: 720.0
    y1: 200.0
    z_index: 3
  - border_color: '#00000000'
    border_style: ''
    color: '#050000'
    rotation: 0
    text_bold: true
    text_content: VIP
    text_font: cursive
    text_italic: false
    text_size: 20
    text_unit: pt
    thickness: 1
    type: text
    x1: 240.0
    y1: -80.0
    z_index: 2
nodes:
  - boot_disk_size: null
    configuration:
      - name: ios_config.txt
        content: |-
          Building configuration...

          Current configuration : 1433 bytes
          !
          ! Last configuration change at 08:18:04 UTC Mon Apr 29 2024
          !
          version 17.12
          service timestamps debug datetime msec
          service timestamps log datetime msec
          !
          hostname Iol-l2-0
          !
          boot-start-marker
          boot-end-marker
          !
          !
          no logging console
          no aaa new-model
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          ip audit notify log
          ip audit po max-events 100
          ip cef
          login on-success log
          no ipv6 cef
          !
          !
          !
          !
          !
          !
          !
          vtp version 1
          multilink bundle-name authenticated
          !
          !
          !
          !
          memory free low-watermark processor 80589
          !
          !
          spanning-tree mode rapid-pvst
          spanning-tree extend system-id
          !
          !
          vlan internal allocation policy ascending
          !
          !
          !
          !
          !
          interface Ethernet0/0
           switchport trunk encapsulation dot1q
           switchport mode trunk
          !
          interface Ethernet0/1
           switchport access vlan 10
          !
          interface Ethernet0/2
           switchport access vlan 10
          !
          interface Ethernet0/3
           switchport access vlan 20
          !
          interface Ethernet1/0
           switchport access vlan 20
          !
          interface Ethernet1/1
           switchport access vlan 30
          !
          interface Ethernet1/2
           switchport access vlan 30
          !
          interface Ethernet1/3
          !
          interface Vlan10
           ip address 192.168.1.2 255.255.255.0
          !
          interface Vlan20
           ip address 192.168.2.2 255.255.255.0
          !
          interface Vlan30
           ip address 192.168.3.2 255.255.255.0
          !
          ip forward-protocol nd
          !
          !
          ip http server
          ip http secure-server
          ip ssh bulk-mode 131072
          !
          !
          !
          !
          !
          !
          control-plane
          !
          !
          !
          line con 0
           exec-timeout 0 0
           logging synchronous
          line aux 0
          line vty 0 4
           exec-timeout 0 0
           login
           transport input ssh
          !
          !
          end
    cpu_limit: null
    cpus: null
    data_volume: null
    hide_links: false
    id: n0
    image_definition: null
    label: iol-l2-0
    node_definition: ioll2-xe
    parameters: {}
    ram: null
    tags: []
    x: -40
    y: -80
    interfaces:
      - id: i0
        label: Loopback0
        type: loopback
      - id: i1
        label: Ethernet0/0
        slot: 0
        type: physical
      - id: i2
        label: Ethernet0/1
        slot: 1
        type: physical
      - id: i3
        label: Ethernet0/2
        slot: 2
        type: physical
      - id: i4
        label: Ethernet0/3
        slot: 3
        type: physical
      - id: i5
        label: Ethernet1/0
        slot: 4
        type: physical
      - id: i6
        label: Ethernet1/1
        slot: 5
        type: physical
      - id: i7
        label: Ethernet1/2
        slot: 6
        type: physical
  - boot_disk_size: null
    configuration: []
    cpu_limit: null
    cpus: null
    data_volume: null
    hide_links: false
    id: n1
    image_definition: null
    label: desktop-0
    node_definition: desktop
    parameters: {}
    ram: null
    tags: []
    x: -360
    y: -160
    interfaces:
      - id: i0
        label: eth0
        slot: 0
        type: physical
  - boot_disk_size: null
    configuration: []
    cpu_limit: null
    cpus: null
    data_volume: null
    hide_links: false
    id: n2
    image_definition: null
    label: desktop-1
    node_definition: desktop
    parameters: {}
    ram: null
    tags: []
    x: -360
    y: 0
    interfaces:
      - id: i0
        label: eth0
        slot: 0
        type: physical
  - boot_disk_size: null
    configuration: []
    cpu_limit: null
    cpus: null
    data_volume: null
    hide_links: false
    id: n3
    image_definition: null
    label: desktop-2
    node_definition: desktop
    parameters: {}
    ram: null
    tags: []
    x: -160
    y: 200
    interfaces:
      - id: i0
        label: eth0
        slot: 0
        type: physical
  - boot_disk_size: null
    configuration: []
    cpu_limit: null
    cpus: null
    data_volume: null
    hide_links: false
    id: n4
    image_definition: null
    label: desktop-3
    node_definition: desktop
    parameters: {}
    ram: null
    tags: []
    x: 80
    y: 200
    interfaces:
      - id: i0
        label: eth0
        slot: 0
        type: physical
  - boot_disk_size: null
    configuration: []
    cpu_limit: null
    cpus: null
    data_volume: null
    hide_links: false
    id: n5
    image_definition: null
    label: desktop-4
    node_definition: desktop
    parameters: {}
    ram: null
    tags: []
    x: 280
    y: 0
    interfaces:
      - id: i0
        label: eth0
        slot: 0
        type: physical
  - boot_disk_size: null
    configuration: []
    cpu_limit: null
    cpus: null
    data_volume: null
    hide_links: false
    id: n6
    image_definition: null
    label: desktop-5
    node_definition: desktop
    parameters: {}
    ram: null
    tags: []
    x: 280
    y: -160
    interfaces:
      - id: i0
        label: eth0
        slot: 0
        type: physical
  - boot_disk_size: null
    configuration:
      - name: ios_config.txt
        content: |-
          Building configuration...

          Current configuration : 1876 bytes
          !
          ! Last configuration change at 08:18:06 UTC Mon Apr 29 2024
          !
          version 17.12
          service timestamps debug datetime msec
          service timestamps log datetime msec
          !
          hostname inserthostname-here
          !
          boot-start-marker
          boot-end-marker
          !
          !
          no logging console
          no aaa new-model
          !
          !
          !
          no ip routing
          !
          !
          !
          !
          !
          !
          !
          ip dhcp excluded-address 192.168.1.1 192.168.1.5
          ip dhcp excluded-address 192.168.2.1 192.168.2.5
          ip dhcp excluded-address 192.168.3.1 192.168.3.5
          !
          ip dhcp pool HR-Team[Vlan-10]
           network 192.168.1.0 255.255.255.0
           default-router 192.168.1.2
           dns-server 192.168.1.1
          !
          ip dhcp pool Managment[Vlan-20]
           network 192.168.2.0 255.255.255.0
           default-router 192.168.2.2
           dns-server 192.168.2.1
          !
          ip dhcp pool VIP_Pool[Vlan-30]
           network 192.168.3.0 255.255.255.0
           default-router 192.168.3.2
           dns-server 192.168.3.1
          !
          !
          !
          no ip cef
          login on-success log
          no ipv6 cef
          !
          !
          !
          !
          !
          !
          !
          !
          multilink bundle-name authenticated
          !
          !
          !
          !
          !
          memory free low-watermark processor 81225
          !
          !
          spanning-tree mode rapid-pvst
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          !
          interface Ethernet0/0
           no ip address
           no ip route-cache
          !
          interface Ethernet0/0.1
           encapsulation dot1Q 10
           ip address 192.168.1.1 255.255.255.0
           no ip route-cache
          !
          interface Ethernet0/0.2
           encapsulation dot1Q 20
           ip address 192.168.2.1 255.255.255.0
           no ip route-cache
          !
          interface Ethernet0/0.3
           encapsulation dot1Q 30
           ip address 192.168.3.1 255.255.255.0
           no ip route-cache
          !
          interface Ethernet0/1
           no ip address
           no ip route-cache
           shutdown
          !
          interface Ethernet0/2
           no ip address
           no ip route-cache
           shutdown
          !
          interface Ethernet0/3
           no ip address
           no ip route-cache
           shutdown
          !
          ip forward-protocol nd
          !
          !
          ip http server
          ip http secure-server
          ip ssh bulk-mode 131072
          !
          !
          !
          !
          !
          control-plane
          !
          !
          !
          line con 0
           exec-timeout 0 0
           logging synchronous
          line aux 0
          line vty 0 4
           exec-timeout 0 0
           login
           transport input ssh
          !
          !
          !
          !
          end
    cpu_limit: null
    cpus: null
    data_volume: null
    hide_links: false
    id: n7
    image_definition: null
    label: iol-0
    node_definition: iol-xe
    parameters: {}
    ram: null
    tags: []
    x: -40
    y: -400
    interfaces:
      - id: i0
        label: Loopback0
        type: loopback
      - id: i1
        label: Ethernet0/0
        slot: 0
        type: physical
      - id: i2
        label: Ethernet0/1
        slot: 1
        type: physical
      - id: i3
        label: Ethernet0/2
        slot: 2
        type: physical
      - id: i4
        label: Ethernet0/3
        slot: 3
        type: physical
  - boot_disk_size: null
    configuration: []
    cpu_limit: null
    cpus: null
    data_volume: null
    hide_links: false
    id: n8
    image_definition: null
    label: ext-conn-0
    node_definition: external_connector
    parameters: {}
    ram: null
    tags: []
    x: -280
    y: -400
    interfaces:
      - id: i0
        label: port
        slot: 0
        type: physical
links:
  - id: l0
    n1: n0
    n2: n7
    i1: i1
    i2: i1
    conditioning: {}
    label: iol-l2-0-Ethernet0/0<->iol-0-Ethernet0/0
  - id: l1
    n1: n0
    n2: n1
    i1: i2
    i2: i0
    conditioning: {}
    label: iol-l2-0-Ethernet0/1<->desktop-0-eth0
  - id: l2
    n1: n0
    n2: n2
    i1: i3
    i2: i0
    conditioning: {}
    label: iol-l2-0-Ethernet0/2<->desktop-1-eth0
  - id: l3
    n1: n0
    n2: n3
    i1: i4
    i2: i0
    conditioning: {}
    label: iol-l2-0-Ethernet0/3<->desktop-2-eth0
  - id: l4
    n1: n0
    n2: n4
    i1: i5
    i2: i0
    conditioning: {}
    label: iol-l2-0-Ethernet1/0<->desktop-3-eth0
  - id: l5
    n1: n0
    n2: n6
    i1: i6
    i2: i0
    conditioning: {}
    label: iol-l2-0-Ethernet1/1<->desktop-5-eth0
  - id: l6
    n1: n0
    n2: n5
    i1: i7
    i2: i0
    conditioning: {}
    label: iol-l2-0-Ethernet1/2<->desktop-4-eth0
  - id: l7
    n1: n7
    n2: n8
    i1: i2
    i2: i0
    conditioning: {}
    label: iol-0-Ethernet0/1<->ext-conn-0-port
lab:
  description: |-
    Welcome to our lab on setting up VLANs, which are like separate virtual networks, on multiple switches!
    VLANs (Virtual LANs): Think of VLANs as dividing a big house into different rooms. Each room can have its own stuff and people, but they're all still in the same house. Similarly, VLANs let us divide a big network into smaller, separate parts. This helps keep things organized and secure.
    Access Ports: Imagine these as doors to rooms in our house. Access ports connect devices (like computers or phones) to the network. We have two types: one for regular data and another for voice (like phones).
    Default VLAN: Every switch has a default room where devices automatically go when they're connected. It's like when you first move into a house, you're assigned a room until you decide where you want to be. The default VLAN is similar; devices are initially put there until we assign them to another VLAN.
    InterVLAN Connectivity: This is like having secret passages or corridors between rooms in our house. Normally, devices in one room can't talk to devices in another, but with InterVLAN connectivity, they can. This lets different VLANs communicate with each other.
    So, in this lab, we'll learn how to set up these VLANs, connect devices to access ports, deal with the default VLAN, and make sure devices in different VLANs can talk to each other. Ready to dive in? Let's go!
  notes: |-
    #Task-2.1

    step1: Configure Vlan 10, 20, 30 and give names managment, HR Team , VIP in IOL-L2-0 switch.

    login into Iol-l2-0 switch and enter into global configuration mode.
    #enable
    #configuration mode
    #vlan 10
    #name HR-Team
    #vlan 20
    #name Managment
    #vlan 30
    #name VIP

    Now assign the Vlan's to the ports.

    #interface E0/1
    #switchport mode access vlan 10

    repeat the commands to all ports according to their corresponding Vlans

    step 2: verfiy the working of Vlan

    To verfiy the working before that you need to add the IP address to the desktops for each.
    Esle you can just put the below configuration on Iol-l2-0
    #en
    #conf t
    #interface E0/0
    #switchport encapulation dot1q
    #switchport mode trunk
    #do wr
    #end

    once applied above configuration reboot all desktops so that IP can get assigned.

    Note: Please ignore the working of above commands. You will learning about tagging[Trunk port], DHCP in up-comming labs.

    Verfication:
    #show vlan brief
    #show vlan

    Now you are able to ping with in the vlan not out side of it.
    example: you can ping desktop-0 to 1 but not desktop-2,4...

    step 3: Verfiy the status of port(Access or Trunk for managment desktop connected port on switch)

    #show interface trunk
    Port           Mode             Encapsulation  Status        Native vlan
    Et0/0          on               802.1q         trunking      1

    Port           Vlans allowed on trunk
    Et0/0          1-4094

    Port           Vlans allowed and active in management domain
    Et0/0          1,10,20,30

    Port           Vlans in spanning tree forwarding state and not pruned
    Et0/0          1,10,20,30

    If port refelects here then that port is trunk port not the Access port. Here it is showing only Et0/0 is trunk port.


    step 4: configure the router or switch so that inter vlan communication can happen.
    Note: You will learn about this in upcomming Labs(inter Vlan routing[router on stick])
    We can make L3 swhich is capable of doing routing and create virtual interfaces.

    #en
    #conf t
    #ip routing
    #int vlan 10
    #ip add 192.168.1.2 255.255.255.0

    simarly configure interface vlan 20, 30 with ip address 192.168.2.2, 192.168.3.2(make sure that the default gateway of desktop is virtual interface IP).


    step 5: Verfiy the connectvity between managment desktop and infra employee desktop.

    To verfiy now all switches are able to ping each other.
    inserthostname-here:~$ ping 192.168.3.6
    PING 192.168.3.6 (192.168.3.6): 56 data bytes
    64 bytes from 192.168.3.6: seq=0 ttl=42 time=0.638 ms
    64 bytes from 192.168.3.6: seq=1 ttl=42 time=0.628 ms
    64 bytes from 192.168.3.6: seq=2 ttl=42 time=1.070 ms
    64 bytes from 192.168.3.6: seq=3 ttl=42 time=0.865 ms
    64 bytes from 192.168.3.6: seq=4 ttl=42 time=1.064 ms
    64 bytes from 192.168.3.6: seq=5 ttl=42 time=0.655 ms
    64 bytes from 192.168.3.6: seq=6 ttl=42 time=0.598 ms
    64 bytes from 192.168.3.6: seq=7 ttl=42 time=0.982 ms
    ^C
    --- 192.168.3.6 ping statistics ---
    8 packets transmitted, 8 packets received, 0% packet loss
    round-trip min/avg/max = 0.598/0.812/1.070 ms
    inserthostname-here:~$
  title: Task-2.1[Configure and verify VLANs]
  version: 0.2.2
