1 .\" Copyright (c) 2006 Pierre-Yves Ritschard <pyr@openbsd.org>
2 .\" Copyright (c) 2008 Vincent Bernat <bernat@luffy.cx>
4 .\" Permission to use, copy, modify, and/or distribute this software for any
5 .\" purpose with or without fee is hereby granted, provided that the above
6 .\" copyright notice and this permission notice appear in all copies.
8 .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 .Dd $Mdocdate: July 16 2008 $
22 .Nd control LLDP daemon
42 When no command is specified,
44 will start an interactive shell which can be used to input arbitrary
45 commands as if they were specified on the command line. This
46 interactive shell should provide completion and history support.
48 The options are as follows:
51 Enable more debugging information. This flag can be repeated.
53 Specify the Unix-domain socket used for communication with
58 version. When repeated, show more build information.
60 Choose the output format. Currently
67 formats are available. The default is
72 but the structure of the JSON object is not affected by the number of
73 interfaces or the number of neighbors. It is therefore easier to
76 Read the given configuration file. This option may be repeated several
77 times. If a directory is provided, each file contained in it will be
80 Order is alphabetical.
86 will display detailed information about each neighbors on the
87 specified interfaces or on all interfaces if none are specified. This
88 command is mostly kept for backward compatibility with older versions.
90 The following commands are supported by
92 When there is no ambiguity, the keywords can be abbreviated. For
94 .Cd show neighbors ports eth0 summary
96 .Cd sh neigh p eth0 sum
98 .Bd -ragged -offset XX
100 .Bd -ragged -offset XXXXXX
106 .Bd -ragged -offset XXXXXX
107 Display general help or help about a command. Also, you can get help
108 using the completion or by pressing the
110 key. However, completion and inline help may be unavailable if
112 was compiled without readline support but
114 command is always available.
118 .Op ports Ar ethX Op ,...
119 .Op Cd details | summary
121 .Bd -ragged -offset XXXXXX
122 Display information about each neighbor known by
126 only the name and the port description of each remote host will be
127 displayed. On the other hand, with
129 all available information will be displayed, giving a verbose
132 also display remote ports hidden by the smart filter. When specifying
133 one or several ports, the information displayed is limited to the
138 .Op ports Ar ethX Op ,...
139 .Op Cd details | summary
141 .Bd -ragged -offset XXXXXX
142 Display information about each local interface known by
146 only the name and the port description of each local interface will be
147 displayed. On the other hand, with
149 all available information will be displayed, giving a verbose
152 also display local ports hidden by the smart filter. When specifying
153 one or several ports, the information displayed is limited to the
158 .Op Cd details | summary
159 .Bd -ragged -offset XXXXXX
160 Display information about local chassis. With
162 most details are skipped. On the other hand, with
164 all available information will be displayed, giving a verbose
169 .Op ports Ar ethX Op ,...
170 .Op Cd details | summary
173 .Bd -ragged -offset XXXXXX
174 Watch for any neighbor changes and report them as soon as they
175 happen. When specifying ports, the changes are only reported when
176 happening on the given ports.
180 have the same meaning than previously described. If
184 will exit after receiving the specified number of events.
187 .Cd show configuration
188 .Bd -ragged -offset XXXXXX
189 Display global configuration of
195 .Op ports Ar ethX Op ,...
197 .Bd -ragged -offset XXXXXX
198 Report LLDP-related statistics, like the number of LLDPDU transmitted,
199 received, discarded or unrecognized. When specifying ports, only the
200 statistics from the given port are reported. With
202 the statistics of each port is summed.
206 .Bd -ragged -offset XXXXXX
209 update its information and send new LLDP PDU on all interfaces.
213 .Cd system hostname Ar name
214 .Bd -ragged -offset XXXXXX
215 Override system hostname with the provided value. By default, the
216 system name is the FQDN found from the resolved value of
218 As a special value, use "." (dot) to use the short hostname instead of
224 .Bd -ragged -offset XXXXXX
225 Do not override system hostname and restore the use of the node name.
229 .Cd system description Ar description
230 .Bd -ragged -offset XXXXXX
231 Override chassis description with the provided value instead of using
232 kernel name, node name, kernel version, build date and architecture.
236 .Cd system description
237 .Bd -ragged -offset XXXXXX
238 Do not override chassis description and use a value computed from node
239 name, kernel name, kernel version, build date and architecture instead.
243 .Cd system platform Ar description
244 .Bd -ragged -offset XXXXXX
245 Override platform description with the provided value instead of using
246 kernel name. This value is currently only used for CDP.
251 .Bd -ragged -offset XXXXXX
252 Do not override platform description and use the kernel name. This
253 option undoes the previous one.
257 .Cd system interface pattern Ar pattern
258 .Bd -ragged -offset XXXXXX
259 Specify which interface to listen and send LLDPDU to. Without this
262 will use all available physical interfaces. This option can use
263 wildcards. Several interfaces can be specified separated by commas.
264 It is also possible to blacklist an interface by suffixing it with an
265 exclamation mark. It is possible to whitelist an interface by
266 suffixing it with two exclamation marks. A whitelisted interface beats
267 a blacklisted interfaces which beats a simple matched interface. For
271 will only use interfaces starting by
273 with the exception of
280 will use all interfaces, except interfaces starting by
282 with the exception of
284 When an exact match is found, it will circumvent some tests. For example, if
286 is specified, it will be accepted even if this is a VLAN interface.
290 .Cd system interface pattern
291 .Bd -ragged -offset XXXXXX
292 Remove any previously configured interface pattern and use all
293 physical interfaces. This option undoes the previous one.
297 .Cd system interface description
298 .Bd -ragged -offset XXXXXX
299 Some OS allows the user to set a description for an interface. Setting
300 this option will enable
302 to override this description with the name of the peer neighbor if one
303 is found or with the number of neighbors found.
307 .Cd system interface description
308 .Bd -ragged -offset XXXXXX
309 Do not update interface description with the name of the peer
310 neighbor. This option undoes the previous one.
314 .Cd system interface promiscuous
315 .Bd -ragged -offset XXXXXX
316 Enable promiscuous mode on managed interfaces.
318 When the interface is not managed any more (or when quitting
320 the interface is left in promiscuous mode as it is difficult to know
321 if someone else also put the interface in promiscuous mode.
323 This option is known to be useful when the remote switch is a Cisco
324 2960 and the local network card features VLAN hardware
325 acceleration. In this case, you may not receive LLDP frames from the
326 remote switch. The most plausible explanation for this is the frame is
327 tagged with some VLAN (usually VLAN 1) and your network card is
328 filtering VLAN. This is not the only available solution to work-around
329 this problem. If you are concerned about performance issues, you can
330 also tag the VLAN 1 on each interface instead.
332 Currently, this option has no effect on anything else than Linux. On
333 other OS, either disable VLAN acceleration, tag VLAN 1 or enable
334 promiscuous mode manually on the interface.
338 .Cd system interface promiscuous
339 .Bd -ragged -offset XXXXXX
340 Do not set promiscuous mode on managed interfaces. This option does
341 not disable promiscuous mode on interfaces already using this mode.
345 .Cd system ip management pattern Ar pattern
346 .Bd -ragged -offset XXXXXX
347 Specify the management addresses of this system. As for interfaces
348 (described above), this option can use wildcards and inversions.
349 Without this option, the first IPv4 and the first IPv6 are used. If an
350 exact IP address is provided, it is used as a management address
351 without any check. If only negative patterns are provided, only one
352 IPv4 and one IPv6 addresses are chosen. Otherwise, many of them can be
353 selected. If you want to blacklist IPv6 addresses, you can use
358 .Cd system ip management pattern
359 .Bd -ragged -offset XXXXXX
360 Unset any specific pattern for matching management addresses. This
361 option undoes the previous one.
365 .Cd system bond-slave-src-mac-type Ar value
366 .Bd -ragged -offset XXXXXX
367 Set the type of src mac in lldp frames sent on bond slaves
370 .Bl -tag -width "XXX." -compact -offset XX
376 An arbitrary fixed value
377 .Li ( 00:60:08:69:97:ef )
379 Real mac with locally administered bit set. If the real mac already
380 has the locally administered bit set, fallback to the fixed value.
384 .Nm bond-slave-src-mac-type
387 Some switches may complain when using one of the two other possible
388 values (either because
389 .Li 00:00:00:00:00:00
390 is not a valid MAC or because the MAC address is flapping from one
391 port to another). Using
393 might lead to a duplicate MAC address on the network (but this is
399 .Cd nearest-bridge | nearest-non-tpmr-bridge | nearest-customer-bridge
400 .Bd -ragged -offset XXXXXX
401 The destination MAC address used to send LLDPDU allows an agent to
402 control the propagation of LLDPDUs. By default, the
403 .Li 01:80:c2:00:00:0e
404 MAC address is used and limit the propagation of the LLDPDU to the
406 .Cd ( nearest-bridge ) .
410 .Li 01:80:c2:00:00:03
411 MAC address instead, use
412 .Cd nearest-nontpmr-bridge
415 .Li 01:80:c2:00:00:00
416 MAC address instead, use
417 .Cd nearest-customer-bridge
422 .Cd lldp portidsubtype
423 .Cd ifname | macaddress
426 .Op ports Ar ethX Op ,...
427 .Cd lldp portidsubtype
428 .Cd local Ar value Op Cd description Ar description
429 .Bd -ragged -offset XXXXXX
430 Force port ID subtype. By default,
432 will use the MAC address as port identifier and the interface name as
433 port description, unless the interface has an alias. In this case, the
434 interface name will be used as port identifier and the description
435 will be the interface alias. With this command, you can force the port
436 identifier to be the interface name (with
438 the MAC address (with
440 or a local value (with
442 In the latest case, the local value should be provided.
443 Optionally, a port description can also be provided after the local
448 .Cd lldp tx-interval Ar interval
449 .Bd -ragged -offset XXXXXX
450 Change transmit delay to the specified value in seconds. The transmit
451 delay is the delay between two transmissions of LLDP PDU. The default
456 .Cd lldp tx-hold Ar hold
457 .Bd -ragged -offset XXXXXX
458 Change transmit hold value to the specified value. This value is used
459 to compute the TTL of transmitted packets which is the product of this
460 value and of the transmit delay. The default value is 4 and therefore
461 the default TTL is 120 seconds.
465 .Op ports Ar ethX Op ,...
467 .Cd status Ar rx-and-tx | rx-only | tx-only | disabled
468 .Bd -ragged -offset XXXXXX
469 Configure the administrative status of the given port. By default, all
470 ports are configured to be in
472 mode. This means they can receive and transmit LLDP frames (as well as
473 other protocols if needed). In
475 mode, they won't emit any frames and in
477 mode, they won't receive any frames. In
479 mode, no frame will be sent and any incoming frame will be
480 discarded. This setting does not override the operational mode of the
481 main daemon. If it is configured in receive-only mode (with the
483 flag), setting any transmit mode won't have any effect.
490 .Cd subtype Ar subtype
491 .Op Cd oui-info Ar content
492 .Bd -ragged -offset XXXXXX
493 Emit a custom TLV for OUI
497 and optionally with the bytes specified in
503 should be a comma-separated list of bytes in hex format.
505 must be exactly 3-byte long.
508 is specified then the TLV will be added. This is the default action.
511 is specified then all TLVs with the same
522 .Op Cd subtype Ar subtype
523 .Bd -ragged -offset XXXXXX
524 When no oui is specified, remove all previously configured custom TLV.
529 is specified, remove specific instances of custom TLV.
532 .Cd configure med fast-start
533 .Cd enable | tx-interval Ar interval
534 .Bd -ragged -offset XXXXXX
535 Configure LLDP-MED fast start mechanism. When a new LLDP-MED-enabled
536 neighbor is detected, fast start allows
538 to shorten the interval between two LLDPDU.
540 should enable LLDP-MED fast start while
542 specifies the interval between two LLDPDU in seconds. The default
543 interval is 1 second. Once 4 LLDPDU have been sent, the fast start
544 mechanism is disabled until a new neighbor is detected.
547 .Cd unconfigure med fast-start
548 .Bd -ragged -offset XXXXXX
549 Disable LLDP-MED fast start mechanism.
553 .Op ports Ar ethX Op ,...
554 .Cd med location coordinate
555 .Cd latitude Ar latitude
556 .Cd longitude Ar longitude
557 .Cd altitude Ar altitude Ar unit
559 .Bd -ragged -offset XXXXXX
560 Advertise a coordinate based location on the given ports (or on all
561 ports if no port is specified). The format of
563 is a decimal floating point number followed either by
569 is a decimal floating point number followed either by
574 is a decimal floating point number followed either by
576 when expressed in meters or
578 when expressed in floors. A space is expected between the floating
579 point number and the unit.
581 is one of those values:
582 .Bl -bullet -compact -offset XXXXXXXX
591 A valid use of this command is:
592 .D1 configure ports eth0 med location coordinate latitude 48.85667N longitude 2.2014E altitude 117.47 m datum WGS84
596 .Op ports Ar ethX Op ,...
597 .Cd med location address
598 .Cd country Ar country
599 .Cd Op Ar type value Op ...
600 .Bd -ragged -offset XXXXXX
601 Advertise a civic address on the given ports (or on all ports if no
604 is the two-letter code representing the country. The remaining
605 arguments should be paired to form the address. The first member of
606 each pair indicates the type of the second member which is a free-form
607 text. Here is the list of valid types:
608 .Bl -bullet -compact -offset XXXXXXXX
626 trailing-street-suffix
655 A valid use of this command is:
656 .D1 configure ports eth1 med location address country US street Qo Commercial Road Qc city Qo Roseville Qc
660 .Op ports Ar ethX Op ,...
661 .Cd med location elin
663 .Bd -ragged -offset XXXXXX
664 Advertise the availability of an ELIN number. This is used for setting
665 up emergency call. If the provided number is too small, it will be
666 padded with 0. Here is an example of use:
667 .D1 configure ports eth2 med location elin 911
671 .Op ports Ar ethX Op ,...
673 .Cd application Ar application
677 .Op Cd priority Ar priority
679 .Bd -ragged -offset XXXXXX
680 Advertise a specific network policy for the given ports (or for all
681 ports if no port was provided). Only the application type is
684 should be one of the following values:
685 .Bl -bullet -compact -offset XXXXXXXX
693 guest-voice-signaling
706 flag tells that the network policy for the specified application type
707 is required by the device but is currently unknown. This is used by
708 Endpoint Devices, not by Network Connectivity Devices. If not
709 specified, the network policy for the given application type is
712 When a VLAN is specified with
714 tells which 802.1q VLAN ID has to be advertised for the network
715 policy. A valid value is between 1 and 4094.
717 tells the VLAN should be tagged for the specified application type.
720 allows one to specify IEEE 802.1d / IEEE 802.1p Layer 2 Priority, also
721 known as Class of Service (CoS), to be used for the specified
722 application type. This field is usually ignored if no VLAN is
723 specified. The names match 802.1D-2004 standard (table G-2). Some more
724 recent standards may use different labels. Only the numeric values
725 should be relied upon. The accepted labels are:
726 .Bl -tag -width "X." -compact -offset XXXX
734 critical-applications
746 represents the DSCP value to be advertised for the given network
747 policy. DiffServ/Differentiated Services Code Point (DSCP) value as
748 defined in IETF RFC 2474 for the specified application type. Value: 0
749 (default per RFC 2475) through 63. Note: The class selector DSCP
750 values are backwards compatible for devices that only support the old
751 IP precedence Type of Service (ToS) format. (See the RFCs for what
754 A valid use of this command is:
755 .D1 configure med policy application voice vlan 500 priority voice dscp 46
759 .Op ports Ar ethX Op ,...
760 .Cd med power pse | pd
762 .Cd priority Ar priority
764 .Bd -ragged -offset XXXXXX
765 Advertise the LLDP-MED POE-MDI TLV for the given ports or for all
766 interfaces if no port is provided. One can act as a PD (power
767 consumer) or a PSE (power provider). No check is done on the validity
768 of the parameters while LLDP-MED requires some restrictions:
771 PD shall never request more power than physical 802.3af class.
773 PD shall never draw more than the maximum power advertised by PSE.
775 PSE shall not reduce power allocated to PD when this power is in use.
777 PSE may request reduced power using conservation mode
779 Being PSE or PD is a global parameter, not a per-port parameter.
781 does not enforce this: a port can be set as PD or PSE. LLDP-MED also
782 requires for a PSE to only have one power source (primary or
785 does not enforce this. Each port can have its own power source. The
786 same applies for PD and power priority. LLDP-MED MIB does not allow
787 this kind of representation.
791 .Bl -tag -width "XXX." -compact -offset XX
793 Power Sourcing Entity (power provider)
795 Power Device (power consumer)
799 .Bl -tag -width "XXXXXXX" -compact -offset XX
803 For PSE, the power source is the primary power source.
805 For PSE, the power source is the backup power source or a power
806 conservation mode is asked (the PSE may be running on UPS for
809 For PD, the power source is the PSE.
811 For PD, the power source is a local source.
813 For PD, the power source is both the PSE and a local source.
816 Valid priorities are:
817 .Bl -tag -width "XXXXXXXXX" -compact -offset XX
829 should be the total power in milliwatts required by the PD device or
830 available by the PSE device.
832 Here is an example of use:
833 .D1 configure med power pd source pse priority high value 5000
837 .Op ports Ar ethX Op ,...
838 .Cd dot3 power pse | pd
842 .Cd powerpairs Ar powerpairs
843 .Op Cd class Ar class
844 .Op Cd type Ar type Cd source Ar source Cd priority Ar priority Cd requested Ar requested Cd allocated Ar allocated
845 .Bd -ragged -offset XXXXXX
846 Advertise Dot3 POE-MDI TLV for the given port or for all ports if none
847 was provided. One can act as a PD (power consumer) or a PSE (power
848 provider). This configuration is distinct of the configuration of the
849 transmission of the LLDP-MED POE-MDI TLV but the user should ensure
850 the coherency of those two configurations if they are used together.
853 means that MDI power is supported on the given port while
855 means that MDI power is enabled.
857 is used to indicate if pair selection can be controlled. Valid values
861 .Bl -tag -width "XXXXXX" -compact -offset XX
863 The signal pairs only are in use.
865 The spare pairs only are in use.
870 is a number between 0 and 4.
872 The remaining parameters are in conformance with 802.3at and are optional.
874 should be either 1 or 2, indicating which if the device conforms to
875 802.3at type 1 or 802.3at type 2. Values of
879 are the same as for LLDP-MED POE-MDI TLV.
883 are expressed in milliwats.
885 Here are two valid uses of this command:
886 .D1 configure ports eth3 dot3 power pse supported enabled paircontrol powerpairs spare class class-3
887 .D1 configure dot3 power pd supported enabled powerpairs spare class class-3 type 1 source pse priority low requested 10000 allocated 15000
891 .Bd -ragged -offset XXXXXX
896 will not send any more frames or receive ones. This can be undone with
902 .Bd -ragged -offset XXXXXX
907 will start to send and receive frames. This command is issued
908 internally after processing configuration but can be used at any time
916 .Bl -tag -width "@LLDPD_CTL_SOCKET@XX" -compact
917 .It @LLDPD_CTL_SOCKET@
918 Unix-domain socket used for communication with
927 program was written by
928 .An Vincent Bernat Aq bernat@luffy.cx .