{"id":232,"date":"2024-07-17T18:44:43","date_gmt":"2024-07-17T18:44:43","guid":{"rendered":"https:\/\/www.zframez.com\/articles\/?p=232"},"modified":"2025-07-30T03:12:46","modified_gmt":"2025-07-30T03:12:46","slug":"how-bgp-works","status":"publish","type":"post","link":"https:\/\/www.zframez.com\/articles\/routing\/how-bgp-works","title":{"rendered":"How BGP Works ?"},"content":{"rendered":"<body>\n<p><strong>How BGP Works \u2013 Step-by-Step Flow, Packet Types, and NLRI<\/strong><\/p>\n\n\n\n<p>Continuing from our introduction to BGP, let\u2019s now look at how BGP actually works \u2013 how two routers become neighbors, what packets are exchanged between them, and how route information is shared<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<p><strong>Peering in BGP \u2013 No Auto Discovery Here<\/strong><\/p>\n\n\n\n<p>BGP doesn\u2019t work like OSPF or EIGRP. It doesn\u2019t discover neighbors automatically. You have to manually configure the neighbor using their IP address. Only then BGP will try to form a peering session.<\/p>\n\n\n\n<p>This peering can be between routers inside the same AS (we call it <strong>iBGP<\/strong>) or between routers in different ASes (<strong>eBGP<\/strong>). In both cases, BGP starts by forming a <strong>TCP connection on port 179<\/strong>.<\/p>\n\n\n\n<p>Once the TCP connection is established, BGP begins its own packet exchange.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<p><strong>How the BGP Packet Exchange Happens<\/strong><\/p>\n\n\n\n<p>After TCP is up, the BGP session moves through a fixed flow:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>First, BGP sends an <strong>Open packet<\/strong> to introduce itself.<\/li>\n\n\n\n<li>If the Open is accepted, the other router responds with a <strong>Keepalive<\/strong>.<\/li>\n\n\n\n<li>After that, BGP starts sending <strong>Update packets<\/strong> with route information.<\/li>\n\n\n\n<li>Once peering is up, <strong>Keepalives are sent every 60 seconds<\/strong> to maintain the session.<\/li>\n\n\n\n<li>If no message is received within the hold time (usually 180 seconds), the session is brought down.<\/li>\n<\/ul>\n\n\n\n<p>So, BGP doesn\u2019t just say \u201chello\u201d and start working. It goes through proper setup and keeps checking if the other side is still alive.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<p><strong>BGP Packet Types<\/strong><\/p>\n\n\n\n<p>BGP uses only four types of packets. Each has a specific role.<\/p>\n\n\n\n<p><strong>Open Packet<\/strong><\/p>\n\n\n\n<p>This is the first message sent once TCP is up. It contains:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>BGP version<\/li>\n\n\n\n<li>Router ID<\/li>\n\n\n\n<li>Hold time (used for session timeout)<\/li>\n\n\n\n<li>Optional parameters like password and capabilities (e.g., support for MP-BGP)<\/li>\n<\/ul>\n\n\n\n<p>This is basically where both routers negotiate session settings.<\/p>\n\n\n\n<p><strong>Notification Packet<\/strong><\/p>\n\n\n\n<p>If anything goes wrong during session setup \u2013 say, the BGP version doesn\u2019t match, or authentication fails \u2013 BGP sends a <strong>Notification packet<\/strong> and immediately brings down the session. It\u2019s like saying: \u201cSomething\u2019s wrong here, let\u2019s stop.\u201d<\/p>\n\n\n\n<p><strong>Keepalive Packet<\/strong><\/p>\n\n\n\n<p>Once the Open packet is accepted, routers start sending Keepalive packets to keep the session active.<\/p>\n\n\n\n<p>By default:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Keepalives are sent every 60 seconds<\/li>\n\n\n\n<li>The Hold time is usually set to 180 seconds<\/li>\n<\/ul>\n\n\n\n<p>Keepalive interval is typically calculated as:<\/p>\n\n\n\n<p>Keepalive Time = Hold Time \/ 3<\/p>\n\n\n\n<p>So if the hold time is 180 seconds, the router sends a keepalive every 60 seconds. If no packet (Keepalive or Update) is received before the hold time expires, the BGP session is declared down and all routes learned from that neighbor are withdrawn.<\/p>\n\n\n\n<p>You can also customize these values while configuring BGP \u2013 both routers negotiate and agree on which one to use during the session setup<\/p>\n\n\n\n<p><strong>Update Packet<\/strong><\/p>\n\n\n\n<p>This is the most important one. BGP uses <strong>Update packets<\/strong> to send routing information. An Update packet contains:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>NLRI (Network Layer Reachability Information):<\/li>\n\n\n\n<li>Path attributes for those routes<\/li>\n\n\n\n<li>Any previously advertised routes that are now withdrawn<\/li>\n<\/ul>\n\n\n\n<p><strong>What is NLRI?<\/strong><\/p>\n\n\n\n<p>In protocols like OSPF or RIP, we often talk about advertising a \u201cnetwork\u201d \u2013 like saying \u201chere\u2019s a network I can reach.\u201d But BGP is different. Instead of calling it a network, BGP uses a more generic term: NLRI, which stands for Network Layer Reachability Information.<\/p>\n\n\n\n<p>The reason BGP uses this term is simple \u2013 BGP was designed to support more than just IPv4 unicast routing. It can advertise:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>IPv6 routes<\/li>\n\n\n\n<li>MPLS VPN prefixes (VPNv4, VPNv6)<\/li>\n\n\n\n<li>Multicast routing info<\/li>\n\n\n\n<li>EVPN routes etc.<\/li>\n<\/ul>\n\n\n\n<p>Because of this, using the word \u201cnetwork\u201d would be too limiting. So BGP just says \u201cHere\u2019s some reachability information,\u201d and lets the address family define what kind of data is being advertised.<\/p>\n\n\n\n<p>In an IPv4 network, each NLRI entry used to advertise networks includes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A prefix (like 192.168.10.0)<\/li>\n\n\n\n<li>A prefix length (like \/24)<\/li>\n<\/ul>\n\n\n\n<p>Another example:<br>In an MPLS VPN setup, BGP uses <strong>MP-BGP<\/strong> to advertise <strong>VPNv4 routes<\/strong>.<br>In this case, each NLRI entry includes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A <strong>Route Distinguisher (RD)<\/strong> \u2013 to make the prefix globally unique across customers<\/li>\n\n\n\n<li>A <strong>prefix<\/strong> (like 10.10.10.0)<\/li>\n\n\n\n<li>A <strong>prefix length<\/strong> (like \/24)<\/li>\n\n\n\n<li>And it\u2019s associated with a <strong>label<\/strong> used for MPLS forwarding<\/li>\n<\/ul>\n\n\n\n<p>So instead of just saying \u201cI can reach 10.10.10.0\/24\u201d, BGP says:<\/p>\n\n\n\n<p>\u201cThis is customer A\u2019s 10.10.10.0\/24 (identified using RD), and here\u2019s the MPLS label to reach it.<\/p>\n\n\n\n<p>And that\u2019s tied to a set of path attributes (like AS Path, Next Hop, Local Preference) that describe how to reach that prefix.<\/p>\n\n\n\n<p>So in short:<\/p>\n\n\n\n<p>NLRI is the generic container used in BGP updates to advertise any kind of reachable destination, not just IPv4 networks.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<p><strong>Why BGP Peering Often Uses Loopback Interfaces<\/strong><\/p>\n\n\n\n<p>In iBGP (internal BGP), it\u2019s a common practice to use the loopback interface instead of a physical interface for peering. The reason is simple: loopbacks are always up as long as the router is up. Physical interfaces can go down due to link failure or flapping, which might break the peering.<\/p>\n\n\n\n<p>By using loopback IPs, you make the BGP session more stable. You just need to make sure that there\u2019s a proper IGP (like OSPF or static routes) that knows how to reach the loopback IP of the other router.<\/p>\n\n\n\n<p>Also, when a router has multiple paths to the neighbor\u2019s loopback (say, via redundant links), the peering stays intact even if one link goes down \u2013 because the loopback is still reachable via the other path. This improves reliability.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n<\/body>","protected":false},"excerpt":{"rendered":"<p>How BGP Works \u2013 Step-by-Step Flow, Packet Types, and NLRI Continuing from our introduction to BGP, let\u2019s now look at how BGP actually works \u2013 how two routers become neighbors, what packets are exchanged between them, and how route information is shared Peering in BGP \u2013 No Auto Discovery Here BGP doesn\u2019t work like OSPF [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"wp-custom-template-post-with-sidebar2","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[103,66],"tags":[110,340,121,109,122,116,343,342,341,123],"class_list":["post-232","post","type-post","status-publish","format-standard","hentry","category-bgp","category-routing","tag-bgp-open-packet","tag-bgp-packets","tag-bgp-process","tag-bgp-protocol","tag-bgp-working","tag-how-bgp-works","tag-keepalive-packet","tag-nlri","tag-update-packet","tag-working-of-bgp"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How BGP Works ? - Tutorials<\/title>\n<meta name=\"description\" content=\"A beginner-friendly guide to how BGP works - from TCP connection and packet types to NLRI and path attributes. Understand what happens behind the scenes in BGP communication.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.zframez.com\/articles\/routing\/how-bgp-works\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How BGP Works \u2013 Packet Types, NLRI, and Route Exchange\" \/>\n<meta property=\"og:description\" content=\"Explore how BGP works step by step \u2014 how it uses TCP, the role of Open, Update, Keepalive, and Notification packets, and how routing info is exchanged using NLRI and path attributes.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.zframez.com\/articles\/routing\/how-bgp-works\" \/>\n<meta property=\"og:site_name\" content=\"Tutorials\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/zframez\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-07-17T18:44:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-07-30T03:12:46+00:00\" \/>\n<meta name=\"author\" content=\"sajith achipra\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@zframez\" \/>\n<meta name=\"twitter:site\" content=\"@zframez\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"sajith achipra\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/routing\\\/how-bgp-works#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/routing\\\/how-bgp-works\"},\"author\":{\"name\":\"sajith achipra\",\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/#\\\/schema\\\/person\\\/8b3b88007644501771d2452d3cc80f41\"},\"headline\":\"How BGP Works ?\",\"datePublished\":\"2024-07-17T18:44:43+00:00\",\"dateModified\":\"2025-07-30T03:12:46+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/routing\\\/how-bgp-works\"},\"wordCount\":886,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/#organization\"},\"keywords\":[\"bgp open packet\",\"bgp packets\",\"bgp process\",\"bgp protocol\",\"bgp working\",\"how bgp works?\",\"keepalive packet\",\"nlri\",\"update packet\",\"working of bgp\"],\"articleSection\":[\"bgp\",\"routing\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.zframez.com\\\/articles\\\/routing\\\/how-bgp-works#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/routing\\\/how-bgp-works\",\"url\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/routing\\\/how-bgp-works\",\"name\":\"How BGP Works ? - Tutorials\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/#website\"},\"datePublished\":\"2024-07-17T18:44:43+00:00\",\"dateModified\":\"2025-07-30T03:12:46+00:00\",\"description\":\"A beginner-friendly guide to how BGP works - from TCP connection and packet types to NLRI and path attributes. Understand what happens behind the scenes in BGP communication.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/routing\\\/how-bgp-works#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.zframez.com\\\/articles\\\/routing\\\/how-bgp-works\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/routing\\\/how-bgp-works#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Tutorials\",\"item\":\"https:\\\/\\\/www.zframez.com\\\/articles\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How BGP Works ?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/#website\",\"url\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/\",\"name\":\"zframez tutorials\",\"description\":\"Learn networking bit by bit\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/#organization\",\"name\":\"zframez technologies\",\"url\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/www.zframez.com\\\/articles\\\/wp-content\\\/uploads\\\/2024\\\/07\\\/zframez-logo.jpg?fit=864%2C864&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/www.zframez.com\\\/articles\\\/wp-content\\\/uploads\\\/2024\\\/07\\\/zframez-logo.jpg?fit=864%2C864&ssl=1\",\"width\":864,\"height\":864,\"caption\":\"zframez technologies\"},\"image\":{\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/zframez\\\/\",\"https:\\\/\\\/x.com\\\/zframez\",\"https:\\\/\\\/www.instagram.com\\\/zframez_technologies\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.zframez.com\\\/articles\\\/#\\\/schema\\\/person\\\/8b3b88007644501771d2452d3cc80f41\",\"name\":\"sajith achipra\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3d9f27c5311500982b6f19d03d0506f1c328f30f51d8d5f73f46577687fd81f8?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3d9f27c5311500982b6f19d03d0506f1c328f30f51d8d5f73f46577687fd81f8?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3d9f27c5311500982b6f19d03d0506f1c328f30f51d8d5f73f46577687fd81f8?s=96&d=mm&r=g\",\"caption\":\"sajith achipra\"},\"sameAs\":[\"http:\\\/\\\/www.zframez.com\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How BGP Works ? - Tutorials","description":"A beginner-friendly guide to how BGP works - from TCP connection and packet types to NLRI and path attributes. Understand what happens behind the scenes in BGP communication.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.zframez.com\/articles\/routing\/how-bgp-works","og_locale":"en_US","og_type":"article","og_title":"How BGP Works \u2013 Packet Types, NLRI, and Route Exchange","og_description":"Explore how BGP works step by step \u2014 how it uses TCP, the role of Open, Update, Keepalive, and Notification packets, and how routing info is exchanged using NLRI and path attributes.","og_url":"https:\/\/www.zframez.com\/articles\/routing\/how-bgp-works","og_site_name":"Tutorials","article_publisher":"https:\/\/www.facebook.com\/zframez\/","article_published_time":"2024-07-17T18:44:43+00:00","article_modified_time":"2025-07-30T03:12:46+00:00","author":"sajith achipra","twitter_card":"summary_large_image","twitter_creator":"@zframez","twitter_site":"@zframez","twitter_misc":{"Written by":"sajith achipra","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.zframez.com\/articles\/routing\/how-bgp-works#article","isPartOf":{"@id":"https:\/\/www.zframez.com\/articles\/routing\/how-bgp-works"},"author":{"name":"sajith achipra","@id":"https:\/\/www.zframez.com\/articles\/#\/schema\/person\/8b3b88007644501771d2452d3cc80f41"},"headline":"How BGP Works ?","datePublished":"2024-07-17T18:44:43+00:00","dateModified":"2025-07-30T03:12:46+00:00","mainEntityOfPage":{"@id":"https:\/\/www.zframez.com\/articles\/routing\/how-bgp-works"},"wordCount":886,"commentCount":0,"publisher":{"@id":"https:\/\/www.zframez.com\/articles\/#organization"},"keywords":["bgp open packet","bgp packets","bgp process","bgp protocol","bgp working","how bgp works?","keepalive packet","nlri","update packet","working of bgp"],"articleSection":["bgp","routing"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.zframez.com\/articles\/routing\/how-bgp-works#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.zframez.com\/articles\/routing\/how-bgp-works","url":"https:\/\/www.zframez.com\/articles\/routing\/how-bgp-works","name":"How BGP Works ? - Tutorials","isPartOf":{"@id":"https:\/\/www.zframez.com\/articles\/#website"},"datePublished":"2024-07-17T18:44:43+00:00","dateModified":"2025-07-30T03:12:46+00:00","description":"A beginner-friendly guide to how BGP works - from TCP connection and packet types to NLRI and path attributes. Understand what happens behind the scenes in BGP communication.","breadcrumb":{"@id":"https:\/\/www.zframez.com\/articles\/routing\/how-bgp-works#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.zframez.com\/articles\/routing\/how-bgp-works"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.zframez.com\/articles\/routing\/how-bgp-works#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Tutorials","item":"https:\/\/www.zframez.com\/articles"},{"@type":"ListItem","position":2,"name":"How BGP Works ?"}]},{"@type":"WebSite","@id":"https:\/\/www.zframez.com\/articles\/#website","url":"https:\/\/www.zframez.com\/articles\/","name":"zframez tutorials","description":"Learn networking bit by bit","publisher":{"@id":"https:\/\/www.zframez.com\/articles\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.zframez.com\/articles\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.zframez.com\/articles\/#organization","name":"zframez technologies","url":"https:\/\/www.zframez.com\/articles\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.zframez.com\/articles\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/zframez-logo.jpg?fit=864%2C864&ssl=1","contentUrl":"https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/zframez-logo.jpg?fit=864%2C864&ssl=1","width":864,"height":864,"caption":"zframez technologies"},"image":{"@id":"https:\/\/www.zframez.com\/articles\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/zframez\/","https:\/\/x.com\/zframez","https:\/\/www.instagram.com\/zframez_technologies\/"]},{"@type":"Person","@id":"https:\/\/www.zframez.com\/articles\/#\/schema\/person\/8b3b88007644501771d2452d3cc80f41","name":"sajith achipra","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/3d9f27c5311500982b6f19d03d0506f1c328f30f51d8d5f73f46577687fd81f8?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/3d9f27c5311500982b6f19d03d0506f1c328f30f51d8d5f73f46577687fd81f8?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3d9f27c5311500982b6f19d03d0506f1c328f30f51d8d5f73f46577687fd81f8?s=96&d=mm&r=g","caption":"sajith achipra"},"sameAs":["http:\/\/www.zframez.com"]}]}},"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":219,"url":"https:\/\/www.zframez.com\/articles\/routing\/bgp-protocol","url_meta":{"origin":232,"position":0},"title":"Introduction to BGP Protocol","author":"sajith achipra","date":"July 17, 2024","format":false,"excerpt":"Introduction to BGP \u2013 The Backbone of Internet Routing In this tutorial, we\u2019ll go over the basics of BGP (Border Gateway Protocol) and what makes it different from other routing protocols. If you're just getting started with routing or trying to understand how large networks communicate over the internet, this\u2026","rel":"","context":"In &quot;bgp&quot;","block_context":{"text":"bgp","link":"https:\/\/www.zframez.com\/articles\/category\/routing\/bgp"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/BGP-packet.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/BGP-packet.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/BGP-packet.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/BGP-packet.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/BGP-packet.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/BGP-packet.png?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":240,"url":"https:\/\/www.zframez.com\/articles\/routing\/bgp-protocol-peering-and-states","url_meta":{"origin":232,"position":1},"title":"BGP Peering Process Explained \u2013 States from Idle to Established","author":"sajith achipra","date":"July 18, 2024","format":false,"excerpt":"Understanding the BGP Peering Process When routers run BGP , they don't start exchanging route information right away. Before they can share anything, they need to form a stable connection, called a BGP peering session. This process involves multiple states, each indicating what\u2019s happening behind the scenes as the routers\u2026","rel":"","context":"In &quot;bgp&quot;","block_context":{"text":"bgp","link":"https:\/\/www.zframez.com\/articles\/category\/routing\/bgp"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/bgp-states.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/bgp-states.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/bgp-states.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/bgp-states.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/bgp-states.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/bgp-states.png?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":262,"url":"https:\/\/www.zframez.com\/articles\/routing\/bgp-configuration-example-ebgp-loopback","url_meta":{"origin":232,"position":2},"title":"BGP Configuration Example 2: EBGP Using Loopback Interfaces","author":"sajith achipra","date":"July 18, 2024","format":false,"excerpt":"BGP Configuration Example In the last tutorial \u201cBGP configuration example : EBGP Peering\u201c, we configured an EBGP peering between two routers using their physical interface IP addresses. In this BGP configuration example, we\u2019ll use loopback interfaces for BGP peering. We prefer loopback interfaces when there are multiple paths between peers\u2026","rel":"","context":"In &quot;bgp&quot;","block_context":{"text":"bgp","link":"https:\/\/www.zframez.com\/articles\/category\/routing\/bgp"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/ebgp-configuration-topology.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/ebgp-configuration-topology.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/ebgp-configuration-topology.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/ebgp-configuration-topology.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/ebgp-configuration-topology.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/ebgp-configuration-topology.png?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":247,"url":"https:\/\/www.zframez.com\/articles\/routing\/bgp-configuration-examples","url_meta":{"origin":232,"position":3},"title":"BGP Configuration Example 1: EBGP Peering","author":"sajith achipra","date":"July 18, 2024","format":false,"excerpt":"BGP Configuration Example: In the previous chapter, you learned about BGP's peering process and states. In this BGP configuration example , you will learn how to configure BGP with two Cisco routers, check the BGP peering status, and understand different BGP show commands. We\u2019ll provide step-by-step instructions to set up\u2026","rel":"","context":"In &quot;bgp&quot;","block_context":{"text":"bgp","link":"https:\/\/www.zframez.com\/articles\/category\/routing\/bgp"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/show-ip-bgp.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/show-ip-bgp.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/show-ip-bgp.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2024\/07\/show-ip-bgp.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":1273,"url":"https:\/\/www.zframez.com\/articles\/routing\/understanding-bgp-next_hop-and-origin-path-attributes","url_meta":{"origin":232,"position":4},"title":"Understanding BGP NEXT_HOP and ORIGIN Path Attributes","author":"sajith achipra","date":"August 6, 2025","format":false,"excerpt":"Understanding the NEXT_HOP Attribute in BGP In BGP, every route that gets advertised comes with some additional information known as path attributes. One of the most important and commonly seen among them is the NEXT_HOP attribute. This attribute simply tells the router: \u201cIf you want to reach this network, send\u2026","rel":"","context":"In &quot;bgp&quot;","block_context":{"text":"bgp","link":"https:\/\/www.zframez.com\/articles\/category\/routing\/bgp"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2025\/08\/ebgp-peers-with-NOH-attribute.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2025\/08\/ebgp-peers-with-NOH-attribute.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2025\/08\/ebgp-peers-with-NOH-attribute.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2025\/08\/ebgp-peers-with-NOH-attribute.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2025\/08\/ebgp-peers-with-NOH-attribute.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2025\/08\/ebgp-peers-with-NOH-attribute.png?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":1270,"url":"https:\/\/www.zframez.com\/articles\/routing\/understanding-bgp-as_path-split-horizon-and-route-reflectors","url_meta":{"origin":232,"position":5},"title":"Understanding BGP AS_PATH, Split Horizon, and Route Reflectors","author":"sajith achipra","date":"August 5, 2025","format":false,"excerpt":"BGP Path Attributes \u2013 AS_PATH, Split Horizon, and Route Reflector One of the key features that makes BGP different from other routing protocols is its use of path attributes. These attributes are attached to BGP route advertisements and provide important information that routers use to make decisions - not just\u2026","rel":"","context":"In &quot;bgp&quot;","block_context":{"text":"bgp","link":"https:\/\/www.zframez.com\/articles\/category\/routing\/bgp"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2025\/08\/BGP-AS-Path-demo.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2025\/08\/BGP-AS-Path-demo.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2025\/08\/BGP-AS-Path-demo.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2025\/08\/BGP-AS-Path-demo.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2025\/08\/BGP-AS-Path-demo.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/www.zframez.com\/articles\/wp-content\/uploads\/2025\/08\/BGP-AS-Path-demo.png?resize=1400%2C800&ssl=1 4x"},"classes":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.zframez.com\/articles\/wp-json\/wp\/v2\/posts\/232","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.zframez.com\/articles\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.zframez.com\/articles\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.zframez.com\/articles\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.zframez.com\/articles\/wp-json\/wp\/v2\/comments?post=232"}],"version-history":[{"count":5,"href":"https:\/\/www.zframez.com\/articles\/wp-json\/wp\/v2\/posts\/232\/revisions"}],"predecessor-version":[{"id":1240,"href":"https:\/\/www.zframez.com\/articles\/wp-json\/wp\/v2\/posts\/232\/revisions\/1240"}],"wp:attachment":[{"href":"https:\/\/www.zframez.com\/articles\/wp-json\/wp\/v2\/media?parent=232"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.zframez.com\/articles\/wp-json\/wp\/v2\/categories?post=232"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zframez.com\/articles\/wp-json\/wp\/v2\/tags?post=232"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}