Skip to content

[action] [PR:3788] Switchport mode update for 'show interfaces status'#4035

Merged
mssonicbld merged 1 commit intosonic-net:202505from
mssonicbld:cherry/202505/3788
Aug 20, 2025
Merged

[action] [PR:3788] Switchport mode update for 'show interfaces status'#4035
mssonicbld merged 1 commit intosonic-net:202505from
mssonicbld:cherry/202505/3788

Conversation

@mssonicbld
Copy link
Collaborator

What I did

Fixed "show interfaces status" output for interfaces with switchport mode configuration.

How I did it

Configured "switchport mode" is fetched from DB for all front panel ports and PortChannel interfaces.
"Vlan" column in "show interface status" is displayed based on below considerations:

  1. If interface is part of PortChannel - display PortChannel interface name [present behavior]
  2. If "switchport mode" is configured on interface [Ethernet/PortChannel] - display configured mode [new behavior]
  3. If "switchport mode" is NOT configured on interface but part of a VLAN [Ethernet/PortChannel] - display as "trunk" [present behavior]
  4. If "switchport mode" is NOT configured on interface and NOT part of a VLAN [Ethernet/PortChannel] - display as "routed" [present behavior]

How to verify it

Configure "switchport mode" for an interface/portchannel and verify the output in below show commands

  1. show interfaces switchport status
  2. show interfaces status

Previous command output (if the output of a command-line utility has changed)

Previously it was always displaying as trunk even if interface is configured as access

root@sonic:~# config switchport mode access Ethernet0
Ethernet0 switched to access mode

root@sonic:~# show interfaces switchport status | grep Ethernet0
Ethernet0    access

root@sonic:~#
root@sonic:~# show interfaces status | grep Ethernet0
  Ethernet0  2304,2305,2306,2307     100G   9100    N/A     etp0   trunk      up       up  QSFP28 or later         N/A

New command output (if the output of a command-line utility has changed)

root@sonic:~# config switchport mode access Ethernet0
Ethernet0 switched to access mode

root@sonic:~# show interfaces switchport status | grep Ethernet0
Ethernet0    access

root@sonic:~#
root@sonic:~# show interfaces status | grep Ethernet0
  Ethernet0  2304,2305,2306,2307     100G   9100    N/A     etp0   access      up       up  QSFP28 or later         N/A

closes #3787

<!--
    Please make sure you've read and understood our contributing guidelines:
    https://github.com/Azure/SONiC/blob/gh-pages/CONTRIBUTING.md

    ** Make sure all your commits include a signature generated with `git commit -s` **

    If this is a bug fix, make sure your description includes "closes #xxxx",
    "fixes #xxxx" or "resolves #xxxx" so that GitHub automatically closes the related
    issue when the PR is merged.

    If you are adding/modifying/removing any command or utility script, please also
    make sure to add/modify/remove any unit tests from the tests
    directory as appropriate.

    If you are modifying or removing an existing 'show', 'config' or 'sonic-clear'
    subcommand, or you are adding a new subcommand, please make sure you also
    update the Command Line Reference Guide (doc/Command-Reference.md) to reflect
    your changes.

    Please provide the following information:
-->

#### What I did
Fixed "show interfaces status" output for interfaces with switchport mode configuration.

#### How I did it
Configured "switchport mode" is fetched from DB for all front panel ports and PortChannel interfaces.
"Vlan" column in "show interface status"  is displayed based on below considerations:
1. If interface is part of PortChannel - display PortChannel interface name [present behavior]
2. If "switchport mode" is configured on interface [Ethernet/PortChannel] - display configured mode [new behavior]
3. If "switchport mode" is NOT configured on interface but part of a VLAN [Ethernet/PortChannel] - display as "trunk" [present behavior]
4. If "switchport mode" is NOT configured on interface and NOT part of a VLAN [Ethernet/PortChannel] - display as "routed" [present behavior]

#### How to verify it
Configure "switchport mode" for an interface/portchannel and verify the output in below show commands
1. show interfaces switchport status
2. show interfaces status

#### Previous command output (if the output of a command-line utility has changed)
Previously it was always displaying as `trunk` even if interface is configured as `access`
```
root@sonic:~# config switchport mode access Ethernet0
Ethernet0 switched to access mode

root@sonic:~# show interfaces switchport status | grep Ethernet0
Ethernet0    access

root@sonic:~#
root@sonic:~# show interfaces status | grep Ethernet0
  Ethernet0  2304,2305,2306,2307     100G   9100    N/A     etp0   trunk      up       up  QSFP28 or later         N/A
```

#### New command output (if the output of a command-line utility has changed)
```
root@sonic:~# config switchport mode access Ethernet0
Ethernet0 switched to access mode

root@sonic:~# show interfaces switchport status | grep Ethernet0
Ethernet0    access

root@sonic:~#
root@sonic:~# show interfaces status | grep Ethernet0
  Ethernet0  2304,2305,2306,2307     100G   9100    N/A     etp0   access      up       up  QSFP28 or later         N/A
```

closes sonic-net#3787
@mssonicbld
Copy link
Collaborator Author

Original PR: #3788

@mssonicbld
Copy link
Collaborator Author

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld mssonicbld merged commit b7011f5 into sonic-net:202505 Aug 20, 2025
7 checks passed
kktheballer pushed a commit to kktheballer/sonic-utilities that referenced this pull request Jan 14, 2026
```<br>* 62664b9 - (HEAD -> 202506) Merge branch '202505' of https://github.com/sonic-net/sonic-utilities into 202506 (2025-08-20) [Sonic Automation]
* b7011f5 - (origin/202505) Switchport mode update for 'show interfaces status' (sonic-net#4035) (2025-08-20) [mssonicbld]<br>```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant