<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Herbert</title>
    <description>The latest articles on DEV Community by Herbert (@seagaruda).</description>
    <link>https://dev.to/seagaruda</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4076312%2F58d5c93d-bc68-4577-90f8-087065fef372.webp</url>
      <title>DEV Community: Herbert</title>
      <link>https://dev.to/seagaruda</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/seagaruda"/>
    <language>en</language>
    <item>
      <title>Native Vibe-Coding Developer</title>
      <dc:creator>Herbert</dc:creator>
      <pubDate>Fri, 14 Aug 2026 01:09:48 +0000</pubDate>
      <link>https://dev.to/seagaruda/native-vibe-coding-developer-1of9</link>
      <guid>https://dev.to/seagaruda/native-vibe-coding-developer-1of9</guid>
      <description>&lt;p&gt;Hi,&lt;/p&gt;

&lt;p&gt;I’m Herbert, a software developer with expertise in Vibe-Coding natively&lt;/p&gt;

</description>
    </item>
    <item>
      <title>From Hardware to Software: Rethinking DR Networking in the Cloud Era</title>
      <dc:creator>Herbert</dc:creator>
      <pubDate>Thu, 13 Aug 2026 12:49:51 +0000</pubDate>
      <link>https://dev.to/seagaruda/from-hardware-to-software-rethinking-dr-networking-in-the-cloud-era-2hl3</link>
      <guid>https://dev.to/seagaruda/from-hardware-to-software-rethinking-dr-networking-in-the-cloud-era-2hl3</guid>
      <description>&lt;h1&gt;
  
  
  From Hardware to Software: Rethinking DR Networking in the Cloud Era
&lt;/h1&gt;

&lt;p&gt;In our previous article, we proposed a core thesis: &lt;strong&gt;public cloud has transformed disaster recovery from a "hardware engineering" discipline into a "software engineering" one.&lt;/strong&gt; Many readers resonated with this idea but wanted us to go deeper — what does "hardware becomes software" actually look like in practice?&lt;/p&gt;

&lt;p&gt;This article drills into the most complex layer of any DR architecture — &lt;strong&gt;network interconnectivity&lt;/strong&gt; — to unpack that transformation in detail.&lt;/p&gt;




&lt;h2&gt;
  
  
  1. The Traditional Data Center Era: Network Interconnection as a "Physical Engineering" Project
&lt;/h2&gt;

&lt;p&gt;In traditional primary-standby data center DR, network interconnection is the most time-consuming and expensive component. Building a cross-DC disaster recovery network requires at minimum:&lt;/p&gt;

&lt;h3&gt;
  
  
  1.1 Physical Link Procurement and Installation
&lt;/h3&gt;

&lt;p&gt;Leased lines (MSTP/OTN) must be pulled between primary and backup data centers. This involves carrier site surveys, conduit construction, and fiber optic installation. Intra-city dedicated lines typically take 2–4 weeks to deliver; inter-city lines can take 1–3 months. Bandwidth is fixed — if you need more, you go through the entire procurement cycle again.&lt;/p&gt;

&lt;h3&gt;
  
  
  1.2 Network Equipment Procurement and Configuration
&lt;/h3&gt;

&lt;p&gt;Each data center requires routers, switches, firewalls, and hardware load balancers (e.g., F5). Hardware procurement cycles are typically 4–8 weeks. After delivery, equipment must be racked, cabled, and configured — VLANs, STP, BGP, OSPF. A medium-sized DR network's device configuration can easily exceed 500 CLI commands.&lt;/p&gt;

&lt;h3&gt;
  
  
  1.3 The Change Management Nightmare
&lt;/h3&gt;

&lt;p&gt;Any network change — adding a route, modifying an ACL, adjusting a load balancing policy — requires a formal change approval process, a maintenance window, and a network engineer manually typing commands on each device at midnight. A mistake can take down the entire network, and rollback isn't guaranteed to be fast.&lt;/p&gt;

&lt;h3&gt;
  
  
  1.4 DR Drills Require Cross-Team Coordination
&lt;/h3&gt;

&lt;p&gt;A single DR drill involves the network team (route changes), systems team (DNS switching), application team (config changes), and database team (primary-replica failover). A dozen people may be involved, and the drill window must be booked weeks in advance. Post-drill, each team must verify state restoration — which is why many enterprises treat DR drills as an annual checkbox exercise.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The core contradiction of traditional DR networking:&lt;/strong&gt; the network is physical, but failures are instantaneous. You spent three months building a physical DR network that may never be able to complete a switchover in minutes.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  2. The Cloud Era: Network Interconnection Becomes "Code-Defined"
&lt;/h2&gt;

&lt;p&gt;Public cloud abstracts the network from "tangible physical devices you can touch" into "programmable logical entities." VPC (Virtual Private Cloud) is not merely a "virtual network" — it is a complete software redefinition of all network behavior.&lt;/p&gt;

&lt;p&gt;Let's compare traditional physical networking with cloud VPC across four key DR dimensions:&lt;/p&gt;

&lt;h3&gt;
  
  
  2.1 Link Interconnection: Leased Lines → VPC Peering / Transit Gateway
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Traditional:&lt;/strong&gt; Physical leased lines between data centers. Carrier installation takes weeks. Bandwidth is fixed and expensive.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cloud:&lt;/strong&gt; VPC Peering Connections or Transit Gateway (AWS) / Cloud Enterprise Network CEN (Alibaba Cloud) for cross-region interconnectivity. The entire process is an API call — &lt;strong&gt;a cross-Region private network link is created in seconds.&lt;/strong&gt; Alibaba Cloud CEN runs on Alibaba's global backbone network, eliminating the need for enterprises to maintain their own dedicated lines.&lt;/p&gt;

&lt;h3&gt;
  
  
  2.2 Routing Configuration: CLI on Each Device → Declarative Route Tables
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Traditional:&lt;/strong&gt; Network engineers log into each router and configure BGP/OSPF via command line. Different vendors have different syntaxes (Cisco IOS vs. Huawei VRP). Configuration inconsistency is a common failure source.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cloud:&lt;/strong&gt; VPC route tables are declarative — you define "destination CIDR → next hop" mappings, and the cloud platform implements them at the underlying layer. Modifying a route is as simple as updating a route table entry. &lt;strong&gt;A single API call can simultaneously affect hundreds of VMs.&lt;/strong&gt; No need to worry about BGP neighbors, STP convergence, or other low-level details.&lt;/p&gt;

&lt;h3&gt;
  
  
  2.3 Security Isolation: Hardware Firewalls → Security Groups / NACLs
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Traditional:&lt;/strong&gt; Hardware firewalls at data center boundaries, VLAN-based internal segmentation. ACL rules are scattered across multiple devices, making auditing difficult and changes risky.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cloud:&lt;/strong&gt; Security Groups attach directly to VM network interfaces; NACLs operate at the subnet level. Rules are defined as JSON/YAML, can be version-controlled, and can be diffed. During DR failover, security policies migrate automatically with instances — &lt;strong&gt;no more "firewall rules weren't synced to the DR site."&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  2.4 Load Balancing: F5 Hardware → Cloud-Native ALB/NLB
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Traditional:&lt;/strong&gt; F5, A10 hardware load balancers in active-standby mode require config synchronization. Session loss during failover is possible. Scaling requires purchasing new hardware.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cloud:&lt;/strong&gt; AWS ALB/NLB, Alibaba Cloud SLB are all managed services with built-in multi-AZ redundancy. Cross-Region traffic distribution uses Route 53 / Cloud DNS failover routing policies. &lt;strong&gt;The entire load balancing layer is inherently highly available — no standby appliances to maintain.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  3. Infrastructure as Code: The "Executable Version" of DR Configuration
&lt;/h2&gt;

&lt;p&gt;The most致命 (fatal) problem with traditional DR isn't "can't do it" — it's "can't explain it." Is the DR data center's network configuration consistent with production? Were the last changes synchronized? Nobody can say for certain, because configuration is scattered across dozens of devices' CLIs.&lt;/p&gt;

&lt;p&gt;Cloud DR solves this through Infrastructure as Code (IaC):&lt;/p&gt;

&lt;h3&gt;
  
  
  3.1 VPC Network as Code
&lt;/h3&gt;

&lt;p&gt;Terraform / CloudFormation lets you write the entire DR network topology as code: VPCs, subnets, route tables, security groups, Peering connections, DNS failover records — all defined declaratively. Git commit is the audit trail. Code Review is the change approval. The DR Region's network environment can be &lt;strong&gt;rebuilt from code in one command&lt;/strong&gt;, no longer dependent on a network engineer's personal notes.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight hcl"&gt;&lt;code&gt;&lt;span class="c1"&gt;# disaster_recovery.tf - VPC cross-region DR&lt;/span&gt;

&lt;span class="nx"&gt;resource&lt;/span&gt; &lt;span class="s2"&gt;"aws_vpc_peering_connection"&lt;/span&gt; &lt;span class="s2"&gt;"dr"&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;vpc_id&lt;/span&gt;      &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;aws_vpc&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;primary&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt;
  &lt;span class="nx"&gt;peer_vpc_id&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;aws_vpc&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;dr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt;
  &lt;span class="nx"&gt;peer_region&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"us-west-2"&lt;/span&gt;
  &lt;span class="nx"&gt;auto_accept&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nx"&gt;resource&lt;/span&gt; &lt;span class="s2"&gt;"aws_route53_record"&lt;/span&gt; &lt;span class="s2"&gt;"failover"&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;zone_id&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;var&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;zone_id&lt;/span&gt;
  &lt;span class="nx"&gt;name&lt;/span&gt;    &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"app.example.com"&lt;/span&gt;
  &lt;span class="nx"&gt;type&lt;/span&gt;    &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"FAILOVER"&lt;/span&gt;

  &lt;span class="nx"&gt;failover_routing_policy&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;type&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"PRIMARY"&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;

  &lt;span class="nx"&gt;set_identifier&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"primary"&lt;/span&gt;
  &lt;span class="nx"&gt;records&lt;/span&gt;        &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;aws_lb&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;primary&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;dns_name&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;

  &lt;span class="nx"&gt;health_check_id&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;aws_route53_health_check&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;primary&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  3.2 DR Drills as Pipelines
&lt;/h3&gt;

&lt;p&gt;Traditional drills require a dozen people coordinating for weeks. Cloud drills can be orchestrated as a CI/CD pipeline: &lt;code&gt;terraform apply&lt;/code&gt; creates an isolated test environment → inject failures (simulate Region unavailability) → verify DNS switchover and traffic shift → auto-generate drill report → &lt;code&gt;terraform destroy&lt;/code&gt; cleanup. The entire process &lt;strong&gt;runs unattended and can execute automatically during off-peak hours daily.&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  3.3 Configuration Drift Detection
&lt;/h3&gt;

&lt;p&gt;Another advantage of IaC: you can periodically run &lt;code&gt;terraform plan&lt;/code&gt; to detect "configuration drift" — if someone manually modified a VPC route or security group rule, the next plan will immediately surface the difference. This solves the most painful problem in traditional DR: &lt;strong&gt;the DR environment silently diverging from production over time.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  4. Three Fundamental Shifts
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Shift 1: From "Physical Topology" to "Logical Topology"
&lt;/h3&gt;

&lt;p&gt;Traditional DR network diagrams show physical device connections — which router connects to which switch, which fiber path. Cloud DR network diagrams show logical relationships — which VPC peers with which VPC, which route table points to which CIDR. The physical topology is abstracted and maintained by the cloud platform. You only need to care about whether the logical topology is correct.&lt;/p&gt;

&lt;h3&gt;
  
  
  Shift 2: From "Device Operations" to "Policy Orchestration"
&lt;/h3&gt;

&lt;p&gt;In the traditional model, a network engineer's daily work is logging into devices for inspections, troubleshooting alerts, and making configuration changes. In the cloud model, all this low-level operations is handled by the cloud platform. The engineer's focus shifts upward to &lt;strong&gt;policy design&lt;/strong&gt; — DR routing policies, traffic switching policies, security isolation policies — implemented and validated as code. The operational object changes from "devices" to "policies."&lt;/p&gt;

&lt;h3&gt;
  
  
  Shift 3: From "Build Ahead" to "Build on Demand"
&lt;/h3&gt;

&lt;p&gt;Traditional DR requires months of advance hardware procurement and line installation. Cloud DR environments can be &lt;strong&gt;spun up from IaC code in minutes when needed.&lt;/strong&gt; This means you can even choose not to maintain a standing DR environment — just keep the code and data backups, and rebuild from scratch on failure. This is the essence of AWS's "Backup &amp;amp; Restore" strategy: using code's rebuildability to replace physical standby servers.&lt;/p&gt;




&lt;h2&gt;
  
  
  5. Three Pitfalls of Cloud Network DR
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Pitfall 1: VPC Quota Limits
&lt;/h3&gt;

&lt;p&gt;Every cloud provider has quota limits on VPC count, Peering connections, route table entries, and security group rules. Large-scale multi-active architectures may hit these ceilings. Proactively request quota increases from your cloud provider during the architecture design phase — don't discover route table entry limits during a DR failover.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pitfall 2: DNS Caching is a Silent Killer
&lt;/h3&gt;

&lt;p&gt;Even if the cloud platform's DNS failover policy is correctly configured, client and intermediate DNS resolver caches can still cause traffic to continue hitting the failed Region. Always set sufficiently short TTLs (60 seconds or lower), and include a "wait for DNS propagation" check step in your DR failover scripts. AWS Route 53 health check intervals should also be set to 10 seconds rather than the default 30.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pitfall 3: Cross-Region Bandwidth Costs
&lt;/h3&gt;

&lt;p&gt;VPC Peering and Transit Gateway cross-Region traffic incurs charges. AWS cross-Region data transfer is approximately $0.01–0.02/GB; Alibaba Cloud CEN cross-region bandwidth packages have corresponding fees. For data-intensive workloads (e.g., continuous database replication), these costs can be significantly higher than expected. Restrict cross-Region sync to critical data; use asynchronous batch sync for non-critical data.&lt;/p&gt;




&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Returning to our core thesis: &lt;strong&gt;public cloud has transformed disaster recovery from a "hardware engineering" discipline into a "software engineering" one.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;At the network layer, this means — the fiber, routers, firewalls, and load balancers you used to procure are now all configuration items inside a VPC. The DR network that used to take months to build is now the execution time of a Terraform script. The DR drill that used to require a dozen people is now a CI pipeline.&lt;/p&gt;

&lt;p&gt;This is not an incremental improvement — it's a paradigm shift. When the DR network goes from a "physical entity" to a "code definition," it inherits all the advantages of code: version management, automated testing, rapid replication, audit traceability.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;In the cloud era, the best DR network isn't "an extra leased line" — it's "a tested piece of code." When failure strikes, code runs faster than cable.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;p&gt;&lt;em&gt;References: AWS Well-Architected Framework, Alibaba Cloud CEN Product Documentation, Terraform Official Documentation&lt;/em&gt;&lt;/p&gt;

</description>
      <category>cloud</category>
      <category>devops</category>
      <category>networking</category>
      <category>terraform</category>
    </item>
  </channel>
</rss>
