If you've spent any time configuring user authentication on... Full Story
By Manny Fernandez
December 3, 2018
Configuring LLDP for Cisco IP Phones on Stand Alone FortiSwitch
As you may or may not know, Fortinet makes switches and they are doing very well from a saturation perspective. Customers are enamored with the pricing of course, but also the ease of use and the super tight integration for those customers using the Fortigate firewall. With the Fortigate, you can manage the switches right from the Fortigate GUI.
However, if you are familiar with the Cisco world of switching, you know that CDP is enabled by default. CDP or Cisco Discovery Protocol (Depending on who you speak to becuse it is rumorred that it was CABLETRON Discovery Protocol, but I digress) allows the Cisco IP Phones to automatically be moved to a ‘voice’ VLAN of your choosing. Since Forinet is obviously NOT Cisco, they have opted for the Stanadards Based (IEEE 802.1AB) LLDP (Link Layer Discovery Protocol).
This was my setup:
FortiSwitch connected to a Cisco Switch running DHCP
ip dhcp pool Data network 10.2.100.0 /24 default-router 10.2.100.1 ip dhcp excluded-address 10.2.100.1 10.2.100.5 ip dhcp pool Voice network 10.2.101.0 /24 default-router 10.2.101.1 ip dhcp excluded-address 10.2.101.1 10.2.101.5

Cisco switch was configured to allow VLANs 100-101 on an 802.1q port (Fa0/48). On the FortiSwitch, we configured port 5 as an 802.1q trunk allowing VLANs 100-101.
edit "port5" set native-vlan 1 set allowed-vlans 100-101 unset untagged-vlans set discard-mode none set dhcp-snooping untrusted set dhcp-snoop-learning-limit-check disable set dhcp-snoop-option82-trust disable set stp-state enabled set stp-loop-protection disabled set stp-root-guard disabled set stp-bpdu-guard disabled set loop-guard disabled set edge-port enabled set auto-discovery-fortilink disable set auto-discovery-fortilink-packet-interval 5 set snmp-index 5 config port-security set framevid-apply enable set port-security-mode none end set learning-limit 0 set sticky-mac disable next
You can see the ‘allowed VLAN’ command shows VLAN 100-101
To configure the LLDP profile, change the ’set vlan 101’ to the corresponding voice VLAN in your environment.
config switch lldp profile edit "default" set med-tlvs inventory-management network-policy set 802.1-tlvs port-vlan-id set auto-isl disable config med-network-policy edit "voice" set status enable set status enable set vlan 101 set dscp 46 end
Once the LLDP configuration is configured, you can now configure the port(s).
edit "port2" set native-vlan 100 set allowed-vlans 100-101 unset untagged-vlans set discard-mode none set dhcp-snooping untrusted set dhcp-snoop-learning-limit-check disable set dhcp-snoop-option82-trust disable set stp-state enabled set stp-loop-protection disabled set stp-root-guard disabled set stp-bpdu-guard disabled set loop-guard disabled set edge-port enabled set auto-discovery-fortilink disable set auto-discovery-fortilink-packet-interval 5 set snmp-index 2 config port-security set framevid-apply enable set port-security-mode none end set learning-limit 0 set sticky-mac disable next

The screeenshot shows the GUI version of the configuration.
Once you attach the Cisco phone and it powers up, you can see on the DHCP binding table that I have one IP address on VLAN 100 and one on VLAN 101.

The MAC address with the 10.2.100.7 is a MacBook Pro while the 10.2.101.6 is the Cisco phone. Of course the date is wrong because I nuked the config on the Cisco switch 🙂
![]()
On the FortiSwitch, you can go to the ‘Monitor’ tab under the ‘Switch’ section and click on the LLDP section.

On a Fortigate managed FortiSwitch, the commands are similar:
config switch lldp-profile edit "default" set med-tlvs inventory-management network-policy set 802.1-tlvs port-vlan-id set auto-isl disable config med-network-policy edit "voice" set status enable set vlan 101 set dscp 46 ! ! edit "port2" set poe-capable 1 set vlan "DATA" set allowed-vlans "qtn.fortilink" "VOIP" set untagged-vlans "qtn.fortilink" set lldp-profile "default" set export-to "root" set description "Cisco Phone" next
In this scenario, the VLAN on the Fortigate is VOIP and DATA respectviely. Some command change slightly but they function the same.
Recent posts
-
-
DNS is one of those technologies that quietly underpins... Full Story
-
BGP issues on FortiGate firewalls usually trace back to... Full Story
-
Every time your laptop talks to your router, a... Full Story
-
If you've spent any time configuring NAT on a... Full Story
-
If you have spent any time configuring firewall policies... Full Story
-
High availability on FortiGate is one of those features... Full Story
-
If you've configured SD-WAN on a FortiGate, you've almost... Full Story
-
FortiLink is the management protocol that turns a FortiSwitch... Full Story
-
FortiSwitches are pretty rock solid from Mean Time Between... Full Story
-
This is a quicky tip. Have you ever gone... Full Story
-
DNS is one of those quiet pieces of internet... Full Story
-
This article is an updated version of the previous... Full Story
-
You will add ns2 as a secondary (slave) BIND9... Full Story
-
In the process of deploying my lab, I needed... Full Story
-
RFC 8805, used to be known as Self-Correcting IP... Full Story
-
Years back, I wrote an article about certificate pinning. ... Full Story
-
FortiGates have the ability to send alerts to Microsoft... Full Story
-
In this post, I am going to walk through... Full Story
-
Troubleshooting VoIP on a FortiGate can feel like trying... Full Story
-
Prior to FortiOS 7.0, there were three commands to... Full Story
-
In this post, I am going to go over... Full Story
-
What we are going to do: We are going... Full Story
-
Choosing between FGCP (FortiGate Clustering Protocol) and FGSP (FortiGate... Full Story
-
Creating a VLAN on macOS (The "Pro" Move) A... Full Story
-
This blog post explores the logic behind how macOS... Full Story
-
Pretty Fly for a Wi-Fi Tell My Wi-Fi Love... Full Story
-
Part of my daily gig is creating BoMs (Bill-of-Materials)... Full Story
-
ICMP introduces several security risks, but careful filtering, rate... Full Story
-
The command diag debug application dhcps -1 enables full... Full Story
-
In the world of FortiOS, execute tac report is... Full Story
-
LLDP; What is it The Link Layer Discovery Protocol... Full Story
-
What it actually does When you run diagnose fdsm... Full Story
-
Monkey Bites are bite-sized, high-impact security insights designed for... Full Story
-
I have run macOS in macOS with Parallels but... Full Story
-
Don't be confused with my other FortiNAC posts where... Full Story
-
This is the third session in a multi-part article... Full Story
-
Today I was configuring key-based authentication on a FortiGate... Full Story
-
Netcat, often called the "Swiss Army knife" of networking,... Full Story
-
At its core, IEEE 802.1X is a network layer... Full Story
-
In case you did not see the previous FortiNAC... Full Story
-
This is our 5th session where we are going... Full Story
-
Now that we have Wireshark installed and somewhat configured,... Full Story
-
The Philosophy of Packet Analysis Troubleshooting isn't about looking... Full Story
-
Overview FortiOS 8.0 introduces custom tags as a first-class... Full Story
-
These are two distinct mechanisms on FortiOS, and conflating... Full Story
-
Replacement messages are the pages and text blocks that... Full Story