{"id":11257,"date":"2026-05-18T12:56:39","date_gmt":"2026-05-18T17:56:39","guid":{"rendered":"https:\/\/stevepedwards.today\/DebianAdmin\/?p=11257"},"modified":"2026-05-24T07:31:24","modified_gmt":"2026-05-24T12:31:24","slug":"azure-bastion-subnet-notes","status":"publish","type":"post","link":"https:\/\/stevepedwards.today\/DebianAdmin\/azure-bastion-subnet-notes\/","title":{"rendered":"Azure Bastion Subnet Notes"},"content":{"rendered":"<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_11257\" class=\"pvc_stats all  \" data-element-id=\"11257\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/stevepedwards.today\/DebianAdmin\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n<p>Azure Bastion: Subnet Configuration Notes<\/p>\n<h1>1. The \"Purpose-Driven\" Automation<\/h1>\n<p>Azure\u2019s UI uses a 'Purpose' selector to automate strict networking rules. Selecting 'Azure Bastion' from the Purpose dropdown transitions the setup from manual to managed configuration.<\/p>\n<h1>2. Automatic Subnet Sizing<\/h1>\n<p>When the 'Azure Bastion' purpose is selected, Azure automatically suggests a compliant subnet range based on your VNet address space.<\/p>\n<p><strong>Important Note: <\/strong>If your Virtual Network uses a \/24 address space (e.g., 10.0.0.0\/24), choosing the Bastion purpose will automatically default the subnet range to a \/26 (e.g., 10.0.0.0\/26). This ensures the subnet satisfies the minimum requirement of 64 total addresses required for the Bastion platform to scale and manage its instances.<\/p>\n<h1>3. Strict Requirements Checklist<\/h1>\n<table>\n<tbody>\n<tr>\n<td>Configuration Item<\/td>\n<td>Strict Requirement<\/td>\n<\/tr>\n<tr>\n<td>Subnet Name<\/td>\n<td>Locked to AzureBastionSubnet<\/td>\n<\/tr>\n<tr>\n<td>Minimum Mask<\/td>\n<td>\/26 (Provides 64 IPs, 59 usable)<\/td>\n<\/tr>\n<tr>\n<td>Subnet Purpose<\/td>\n<td>Azure Bastion (Dropdown selection)<\/td>\n<\/tr>\n<tr>\n<td>Default Behavior<\/td>\n<td>Automatically carves \/26 from a \/24 VNet<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h1>4. Professional Workflow<\/h1>\n<ul>\n<li>Create the VNet first to establish the overall address space.<\/li>\n<li>Navigate to Subnets and add a new entry.<\/li>\n<li>Select 'Azure Bastion' from the 'Subnet Purpose' dropdown immediately.<\/li>\n<li>Verify that the name is locked and the size has defaulted to \/26.<\/li>\n<li>Save the subnet and proceed to deploy the Bastion resource.<\/li>\n<\/ul>\n<h3><span lang=\"EN-US\">Azure Bastion <i data-path-to-node=\"3\" data-index-in-node=\"17\">Must<\/i> Have a Public IP<\/span><\/h3>\n<p id=\"p-rc_a9b40e677ef31fe9-34\" data-path-to-node=\"4\"><span class=\"citation-33\"><b>Even though Azure Bastion is used to keep your virtual machines private and secure from the public internet, Bastion itself is a fully managed gateway wrapper.<\/b><\/span><b> To allow you to connect to your VMs securely through the Azure Portal via your web browser, the Bastion host instance must have a public-facing entry point.<\/b><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_11257\" class=\"pvc_stats all  \" data-element-id=\"11257\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/stevepedwards.today\/DebianAdmin\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n<p>Azure Bastion: Subnet Configuration Notes 1. The \"Purpose-Driven\" Automation Azure\u2019s UI uses a 'Purpose' selector to automate strict networking rules. Selecting 'Azure Bastion' from the Purpose dropdown transitions the setup from manual to managed configuration. 2. Automatic Subnet Sizing When the 'Azure Bastion' purpose is selected, Azure automatically suggests a compliant subnet range based on <a href=\"https:\/\/stevepedwards.today\/DebianAdmin\/azure-bastion-subnet-notes\/\" class=\"more-link\">...<span class=\"screen-reader-text\">\u00a0 Azure Bastion Subnet Notes<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-11257","post","type-post","status-publish","format-standard","hentry","category-post"],"a3_pvc":{"activated":true,"total_views":4,"today_views":0},"_links":{"self":[{"href":"https:\/\/stevepedwards.today\/DebianAdmin\/wp-json\/wp\/v2\/posts\/11257","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/stevepedwards.today\/DebianAdmin\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/stevepedwards.today\/DebianAdmin\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/stevepedwards.today\/DebianAdmin\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/stevepedwards.today\/DebianAdmin\/wp-json\/wp\/v2\/comments?post=11257"}],"version-history":[{"count":2,"href":"https:\/\/stevepedwards.today\/DebianAdmin\/wp-json\/wp\/v2\/posts\/11257\/revisions"}],"predecessor-version":[{"id":11331,"href":"https:\/\/stevepedwards.today\/DebianAdmin\/wp-json\/wp\/v2\/posts\/11257\/revisions\/11331"}],"wp:attachment":[{"href":"https:\/\/stevepedwards.today\/DebianAdmin\/wp-json\/wp\/v2\/media?parent=11257"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/stevepedwards.today\/DebianAdmin\/wp-json\/wp\/v2\/categories?post=11257"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/stevepedwards.today\/DebianAdmin\/wp-json\/wp\/v2\/tags?post=11257"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}