LLDP (Link Layer Discovery Protocol – Bağlantı Katmanı Keşif Protokolü) : IEEE tarafından geliştirilen, bağlı cihazların birbirleri hakkında bilgi edinmesini sağlayan protokoldür. Cihazların hangi porttan (interface) bağlı olduğunu, cihazın türünü (swtich, router vs), cihazların işletim sistemi gibi birçok konuda bilgi sağlar.
Bir önceki konumuzda Cisco CDP konusunu işlemiştik. Bu konumuzda da aynı işlemleri yapacağız. Tek fark, kullanacağımız komutlarda cdp yerine lldp parametresini kullanacağız. Bir önceki konuda yer alan örnek topoloji üzerinden konuyu inceleyeceğiz.
R1
interface Ethernet0/0 ip address 192.168.1.1 255.255.255.252 ! interface Ethernet0/1 ip address 192.168.2.1 255.255.255.0
R2
interface Ethernet0/0 ip address 192.168.3.1 255.255.255.252
SW
interface Vlan1 ip address 192.168.2.10 255.255.255.0
Routerlara interface IP ve Switche de yönetim IP’si verdim. Topolojimizde kullandığımız cihazlar Cisco olduğu için CDP çalışacak ve keşiflerini yapacaktır. Bu yüzden LLDP’yi etkinleştirmek gerekecektir. İki protokol aktif olarak kullanılabilir. Eğer sadece LLDP kullanılmak isteniyorsa, CDP kapatılabilir.
CDP kapatma (isteğe bağlı)
R1(config)#no cdp run
LLDP aktifleştirme
configure terminal
(config)#lldp run
Tüm cihazlarda LLDP’yi aktif ettikten sonra komutlarımıza bakalım.
show lldp neighbors
Komşular hakkında kısa bir bilgi almak için bu komut kullanılır. Çıktıya baktığımızda, komşumuzun Device ID’sinin (hostname), hangi portumuzun bağlı olduğunu, kaç saniyedir ayakta olduğunu, türünü ve komşumuzun hangi portunun bize bağlı olduğunu görebiliriz.
Komşuluklar hakkında daha detaylı bilgi almak için ise komuta detail
parametresini eklememiz gerekecek.
show lldp neighbors detail
Artık komşular hakkında daha fazla detaya sahibiz. SW’nin tek komşusu R1 olduğu için R1 hakkında detayları görebiliyoruz. Çıktıya baktığımızda, R1’in et0/1 portuna bağlı olduğumuzu, port IP’sinin ne 192.168.2.1 olduğunu ve işletim sistemi gibi bilgileri görebiliyoruz.
Port (interface) bazında komşuları görmek
Örneğimizde fazla cihaz olmadığı için çıktıyı okuduğumuzda zorlanmadık. Çok fazla bağlantının olduğu durumlarda port bazında komşu bilgilerine bakmak çıktıyı daha okunabilir hale getirecektir. Port bazında komşulukları görmek için show lldp neighbors
komutundan sonra interface adını belirtmemiz yeterli olacaktır. Örnek olarak SW’in ethernet 0/0 portuna bakalım.
show lldp neighbors ethernet 0/0
Bu bilgi bana yeterli gelmedi, ben biraz daha fazla bilgi edinmek istiyorum derseniz eğer; port belirtildikten sonra detail
parametresini kullanmak gerekecek.
show lldp neighbors ethernet 0/0 detail
LLDP ile komşulukları nasıl görüntüleyebileceğimizi kısaca gördük. Bir de LLDP protokolümüzün hangi değerlerde çalıştığını görelim:
show lldp
Bu komutla çalışan LLDP protokolünün temel yapılandırmasını görmüş olduk. Çıktıya baktığımızda her 30 saniyede bir LLDP paketlerinin gönderildiğini, komşulukların 120 boyunca komşuluk tablosunda tutulduğunu öğrenmiş olduk. Bu değerler istek doğrultusunda değiştirilebilir; bu süreleri uzatabilir ya da kısaltabilirsiniz.
Bu işlemi yapmak için config modda olmamız gerekecek.
holdtime ayarlamak için lldp holdtime
komutu kullanılabilir. Holdtime için 0-65535 arasında değer girilebilir ve bu değer saniye cinsindendir.
SW(config)#lldp holdtime ?
<0-65535> Length of time (in sec) that receiver must keep this packet
LLDP mesajlarının süresinin ayarlamak için ise lldp timer
komutu kullanılır. 5-65534 arasında değer girilebilir ve bu değer saniye cinsindendir.
SW(config)#lldp timer ?
<5-65534> Rate at which LLDP packets are sent (in sec)
LLDP kullanımını kapatmak
Yazının başında LLDP’yi aktif etmiştik. LLDP’yi komple kapatabilir ya da interface bazında kapatabiliriz.
LLDP’yi iki şekilde pasif edebiliriz:
Birincisi, tüm LLDP paketlerini kesmek için global config modda no lldp run
k0mutu ile yapılabilir. Bu durumda hiçbir şekilde LLDP mesajları atılmayacak ve komşuluk bilgileri edinilmeyecektir. Bu komuttan sonra tüm komşuluk tablosu silinecek ve yeni komşuluklar yapılamayacaktır.
SW(config)#no lldp run
İkincisi, interface bazında LLDP pasif edilebilir. Bu durumda tüm LLDP bilgi alışverişi değil de, sadece ilgili porttaki LLDP mesajları kesilmiş olur. Bunu yapmak için ilgili portun konfigürasyonuna girip no lldp recieve
ve no lldp transmit
komutunu kullanmak yeterli olacaktır.
Örnek olarak SW ile R1 arasındaki LLDP kapatma işlemi şu şekilde olacaktır:
SW(config)#interface ethernet 0/0 SW(config-if)#no lldp recieve SW(config-if)#no lldp transmit
NOT: recieve ve transmit parametrelerinin aynı anda kullanılması veri alışverişini tamamen kesecektir. Eğer sadece no lldp recieve komutu kullanılsaydı, LLDP mesajları alınmayacak ama LLDP mesajları hala gönderilmeye devam edilecekti. SW üzerinden açıklamak gerekirse; SW cihazı R1’i komşu olarak göremeyecek ama R1 cihazı SW’yi komşu olarak görmeye devam edecekti. Eğer sadece no lldp transmit komutu kullanılsaydı bu seferde tam tersi bir durum olacak ve SW cihazı R1’i komşu olarak görebilecekken, R1 cihazı SW’yi komşu olarak göremeyecekti.
Bu komuttan sonra LLDP mesajları atılmayacaktır ancak komşuluk tablosunda holdtime süresi bitene kadar komşuluklar görünecektir.
Cisco cihazlarda temel LLDP kullanımı bu şekildedir.