{"id":6458,"date":"2021-12-02T18:14:49","date_gmt":"2021-12-02T16:14:49","guid":{"rendered":"https:\/\/www.imacandi.net\/sin\/blog\/?p=6458"},"modified":"2021-12-02T18:27:19","modified_gmt":"2021-12-02T16:27:19","slug":"ios-xe-port-channels-switchports","status":"publish","type":"post","link":"https:\/\/www.imacandi.net\/sin\/blog\/2021\/12\/02\/ios-xe-port-channels-switchports.html","title":{"rendered":"ios-xe port channels &#038; switchports"},"content":{"rendered":"\n<p>Am avut prin August un mic proiect sa bag niste Layer 2 peste balta la un client. In general, daca nu am constrangeri, folosesc Juniper pe switch-uri managed L2\/L3 din motive de obisnuinta, familiaritate etc.<\/p>\n\n\n\n<p>Anul asta, din cauza de pandemie si timpi de livrare mari, peste 4 luni in medie, am pus niste Cisco Catalyst cu IOS-XE.<\/p>\n\n\n\n<p>Mno, pentru redundanta &amp; stuff, sunt mare fan bundle-uri de X x 1GE sau X x 10GE (in functie de nevoi &amp; stuff).<\/p>\n\n\n\n<p>Pe Juniper, la modul cel mai simplu, un port channel se cheama o interfata ae (aggregated ethernet) si se configureaza in doi pasi.<\/p>\n\n\n\n<p>Prima oara ii zici la interfata fizica din ce port-channel face parte:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ge-0\/0\/0 {\n    description \"to xyz vmnic0\";\n    ether-options {\n        802.3ad ae1;\n    }\n}\n\nge-1\/0\/0 {\n    description \"to xyz vmnic1\";\n    ether-options {\n        802.3ad ae1;\n    }\n}\n<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<p>Si dupa configurezi si interfata de port channel:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>description \"to xyz\";\nmtu 9216;\nunit 0 {\n    family ethernet-switching {\n        interface-mode trunk;\n        vlan {\n            members &#91; v101, v121 ];\n        }\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>Easy peasy lemon squeezy.<\/p>\n\n\n\n<p>Cu Cisco nu prea am avut treaba in ultimii ani, si am zis ca hei, trebuie sa fie la fel din ce mai tineam eu minte de and era la moda sa fac PAgP pe IOS clasic.<\/p>\n\n\n\n<p>E, e cam la fel si pe IOS-XE. La nivel de interfata ii zici:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>interface TenGigabitEthernet1\/1\/3\n channel-protocol lacp\n channel-group 1 mode active\n lacp rate fast\n!\ninterface TenGigabitEthernet1\/1\/4\n channel-protocol lacp\n channel-group 1 mode active\n lacp rate fast\n!\n<\/code><\/pre>\n\n\n\n<p>Si dupa configurezi interfata PortChannel1<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>interface Port-channel1\n switchport trunk allowed vlan 101-121\n switchport mode trunk\n!\n<\/code><\/pre>\n\n\n\n<p>E, si te astepti ca la un &#8220;<strong>sh ru<\/strong>&#8221; sa vezi prin configuratie fix acelasi lucru.<\/p>\n\n\n\n<p>Dar nu, IOS-XE e cu &#8220;surprise motherfucker&#8221;, si zice asa:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>interface Port-channel1\n switchport trunk allowed vlan 101-121\n switchport mode trunk\n!\ninterface TenGigabitEthernet1\/1\/3\n switchport trunk allowed vlan 101-121\n switchport mode trunk\n channel-protocol lacp\n channel-group 1 mode active\n lacp rate fast\n!\ninterface TenGigabitEthernet1\/1\/4\n switchport trunk allowed vlan 101-121\n switchport mode trunk\n channel-protocol lacp\n channel-group 1 mode active\n lacp rate fast\n!\n<\/code><\/pre>\n\n\n\n<p>Cand am vazut asta, zic ma oi fi fost io obosit si am scris gresit, si am bagat configuratia si la interfata si la port channel. Si m-am mancat in cur sa &#8220;repar&#8221; de la distanta treaba asta. Si am sters configuratie de switchport si trunk de pe te\/1\/1\/3. N-a fost chiar cea mai buna idee a mea.<\/p>\n\n\n\n<p>Dupa ce am reparat printr-o sesiune de TeamViewer problema, in sensul ca am facut de la zero toata configuratie de port channel, m-am dus sa ma culc ca se facuse tarziu la mine.<\/p>\n\n\n\n<p>Fast forward vreo 2-3 saptamani, iar a trebuit sa umblu un pic la switch-uri sa mai adaug ceva VLAN-uri, si bam, iar configuratie de switchport pe interfetele din port chanel. Si eram, ba da am sters si-am pus la loc. Ce mortii ma-sii se intampla. Si atunci mi s-a aprins un pic beculetu, si zic ia sa vad daca adaug un VLAN pe interfata de port channel, se pune si in configuratie la interfetele care formeaza port channel-ul?<\/p>\n\n\n\n<p>Raspunsul e da. Si uite asa am invatat eu ca IOS-XE mirroreaza configuratia de pe PortChanel pe interfetele prinse in port chanel.<\/p>\n\n\n\n<p>Nu e mare inginerie treaba asta cu un port channel intre 2 switch-uri, dar lucrurile par complicate cand nu prea ai parte de experienta pe niste echipamente si lucrezi cu ele doar din joi in pasti. Exista si un termen sa zicem stiintific pentru asta: <a href=\"https:\/\/skybrary.aero\/articles\/skill-fade\">skill fade<\/a>. Si problema e ca ti se pare ca stii, da de fapt nu prea :(<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Am avut prin August un mic proiect sa bag niste Layer 2 peste balta la un client. In general, daca nu am constrangeri, folosesc Juniper pe switch-uri managed L2\/L3 din motive de obisnuinta, familiaritate etc. Anul asta, din cauza de pandemie si timpi de livrare mari, peste 4 luni in medie, am pus niste Cisco &hellip; <a href=\"https:\/\/www.imacandi.net\/sin\/blog\/2021\/12\/02\/ios-xe-port-channels-switchports.html\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">ios-xe port channels &#038; switchports<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"ngg_post_thumbnail":0,"footnotes":""},"categories":[2],"tags":[7,47,22],"class_list":["post-6458","post","type-post","status-publish","format-standard","hentry","category-diverse","tag-computers","tag-diverse","tag-ma-sa"],"_links":{"self":[{"href":"https:\/\/www.imacandi.net\/sin\/blog\/wp-json\/wp\/v2\/posts\/6458","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.imacandi.net\/sin\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.imacandi.net\/sin\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.imacandi.net\/sin\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.imacandi.net\/sin\/blog\/wp-json\/wp\/v2\/comments?post=6458"}],"version-history":[{"count":5,"href":"https:\/\/www.imacandi.net\/sin\/blog\/wp-json\/wp\/v2\/posts\/6458\/revisions"}],"predecessor-version":[{"id":6464,"href":"https:\/\/www.imacandi.net\/sin\/blog\/wp-json\/wp\/v2\/posts\/6458\/revisions\/6464"}],"wp:attachment":[{"href":"https:\/\/www.imacandi.net\/sin\/blog\/wp-json\/wp\/v2\/media?parent=6458"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.imacandi.net\/sin\/blog\/wp-json\/wp\/v2\/categories?post=6458"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.imacandi.net\/sin\/blog\/wp-json\/wp\/v2\/tags?post=6458"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}