<?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: Mohammad Montazeri</title>
    <description>The latest articles on DEV Community by Mohammad Montazeri (@m_montazeri).</description>
    <link>https://dev.to/m_montazeri</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%2F4017588%2F2e7c900d-4b09-412f-b5b8-e3ef90f1d872.jpg</url>
      <title>DEV Community: Mohammad Montazeri</title>
      <link>https://dev.to/m_montazeri</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/m_montazeri"/>
    <language>en</language>
    <item>
      <title>VPN After Sleep, Roaming, and Network Switches: What Reconnection Looks Like</title>
      <dc:creator>Mohammad Montazeri</dc:creator>
      <pubDate>Sat, 08 Aug 2026 09:53:32 +0000</pubDate>
      <link>https://dev.to/m_montazeri/vpn-after-sleep-roaming-and-network-switches-what-reconnection-looks-like-43f9</link>
      <guid>https://dev.to/m_montazeri/vpn-after-sleep-roaming-and-network-switches-what-reconnection-looks-like-43f9</guid>
      <description>&lt;p&gt;A VPN connection doesn't exist independently of the network underneath it. It is built on whatever network the device happens to be using at that moment, and on real devices that network changes constantly: laptops sleep and wake, phones move between access points, Wi-Fi drops out and mobile data takes over.&lt;/p&gt;

&lt;p&gt;Each of those events interrupts the ground the connection was standing on, so the client re-establishes itself. This post explains what that reconnection normally looks like, so a short gap after a network change reads as expected behaviour rather than a problem.&lt;/p&gt;

&lt;h2&gt;
  
  
  The VPN sits on top of a changing network
&lt;/h2&gt;

&lt;p&gt;The one-line version: the network underneath is the foundation, and the VPN connection is built on it. When the foundation shifts — a new Wi-Fi network, a switch to mobile data, a device waking from sleep — a connection established on the old foundation cannot simply continue unchanged. It has to re-establish on the new one.&lt;/p&gt;

&lt;p&gt;That is why a short interruption around a network change is normal. It isn't the VPN failing; it's the VPN doing the sensible thing — noticing that the ground moved and rebuilding on the new ground. Understanding this turns "it dropped for a second" from alarming into expected.&lt;/p&gt;

&lt;h2&gt;
  
  
  After sleep
&lt;/h2&gt;

&lt;p&gt;When a device sleeps, network activity generally pauses, and the VPN connection pauses with it. On waking, the device re-establishes network connectivity, and the VPN client works to reconnect on top of that restored network.&lt;/p&gt;

&lt;p&gt;What you may see for a moment:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the client showing that it is reconnecting&lt;/li&gt;
&lt;li&gt;a brief period after wake before the connection is fully up again&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Giving it a few seconds to settle after the device wakes is usually all that is needed. The reconnection is the client catching up to a device that just came back online, not a fault.&lt;/p&gt;

&lt;h2&gt;
  
  
  When switching Wi-Fi networks
&lt;/h2&gt;

&lt;p&gt;Moving from one Wi-Fi network to another changes the underlying connection entirely, so the VPN has to reconnect on the new network. This is common as you move between places — home to office, one access point to another — and a brief reconnection around the switch is the expected behaviour.&lt;/p&gt;

&lt;p&gt;The same realism still holds: the new network is its own network, with its own characteristics, and not every network will support the same setup the same way. If a particular network needs a captive-portal sign-in, that step comes first, before the connection can settle.&lt;/p&gt;

&lt;h2&gt;
  
  
  Moving between Wi-Fi and mobile data
&lt;/h2&gt;

&lt;p&gt;Handing off between Wi-Fi and mobile data is one of the more dynamic transitions a phone makes, and it is a frequent one — walking out of Wi-Fi range, or a network becoming unavailable, hands connectivity to mobile data, or back again. Each handoff changes the underlying network, so the client re-establishes accordingly.&lt;/p&gt;

&lt;p&gt;Mobile devices live in this transition constantly, which is a big part of why a connection can feel more eventful on a phone than on an always-on desktop. A short reconnection around each handoff is normal; a phone that never changed networks would be the unusual one.&lt;/p&gt;

&lt;h2&gt;
  
  
  What helps reconnection along
&lt;/h2&gt;

&lt;p&gt;The interventions are all gentle and patient.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Give it a moment.&lt;/strong&gt; Reconnection often completes on its own within a few seconds of the network settling, and waiting is frequently the whole answer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Toggle the connection.&lt;/strong&gt; If a connection doesn't come back after the network is clearly stable, toggling the VPN connection off and on in the client is the ordinary next step, and reconnecting from your current profile is straightforward.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Localise a stubborn network.&lt;/strong&gt; If reconnection is consistently troublesome on one specific network, that points more at that network than at your setup. Testing on a network you know works helps localise it, and completing any captive portal is part of it.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Nothing here calls for teardowns or drastic changes. Reconnection is a normal, recoverable event, and the client is built to handle it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Setting expectations
&lt;/h2&gt;

&lt;p&gt;The healthy mental model: a VPN connection is continuously dependent on an underlying network that changes often, so momentary reconnections around sleep, roaming, and handoffs are a normal part of using one on a real device. They aren't a defect, and they don't mean anything is misconfigured.&lt;/p&gt;

&lt;p&gt;Two honest notes to close:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Behaviour can vary by device and operating system. Mobile platforms in particular have their own background-activity and connectivity rules, so the same profile can feel a little different across devices, which is expected.&lt;/li&gt;
&lt;li&gt;What any website or service does with your connection is unaffected by reconnection mechanics. Services run their own account and security checks regardless of how or when you reconnect.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Short FAQ
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Why does my VPN briefly disconnect when my laptop wakes from sleep?&lt;/strong&gt;&lt;br&gt;
Because network activity pauses during sleep, and the VPN pauses with it. On waking, the device restores network connectivity and the client reconnects on top of it. A few seconds to settle after wake is normal — it's the client catching up, not a fault.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Is it normal for the VPN to reconnect when I change Wi-Fi networks?&lt;/strong&gt;&lt;br&gt;
Yes. Switching networks changes the connection underneath entirely, so the VPN re-establishes on the new one. A brief reconnection around the switch is expected, and if the new network needs a captive-portal sign-in, that step comes first.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why does my phone's VPN seem more eventful than my computer's?&lt;/strong&gt;&lt;br&gt;
Because phones move between Wi-Fi networks, and between Wi-Fi and mobile data, constantly, and each handoff changes the underlying network the VPN sits on. Mobile platforms also have their own connectivity rules, so short reconnections are a normal part of mobile use.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The connection didn't come back after a network change — what should I do?&lt;/strong&gt;&lt;br&gt;
Give it a few seconds once the network is clearly stable, since reconnection often completes on its own. If it doesn't, toggling the VPN connection off and on in the client and reconnecting from your current profile is the ordinary next step.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Do these reconnections affect how websites treat me?&lt;/strong&gt;&lt;br&gt;
No. Services run their own account and security checks regardless of how or when you reconnect.&lt;/p&gt;

&lt;h2&gt;
  
  
  Closing
&lt;/h2&gt;

&lt;p&gt;Expect brief, self-resolving reconnections, help them along gently when needed, and let the client do the job it is designed for.&lt;/p&gt;

&lt;p&gt;I write this kind of guidance as the founder of Lisar Connect, which provides profile-based VPN access through standard clients using &lt;code&gt;.ovpn&lt;/code&gt; profiles.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;This article was adapted from the original Lisar documentation with AI-assisted editing and human review. No new testing was performed. Originally published at &lt;a href="https://lisar.io/articles/vpn-reconnection-network-changes" rel="noopener noreferrer"&gt;lisar.io&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>vpn</category>
      <category>networking</category>
      <category>troubleshooting</category>
    </item>
    <item>
      <title>VPN Troubleshooting, One Layer at a Time: A Diagnostic Checklist</title>
      <dc:creator>Mohammad Montazeri</dc:creator>
      <pubDate>Thu, 30 Jul 2026 06:45:50 +0000</pubDate>
      <link>https://dev.to/m_montazeri/vpn-troubleshooting-one-layer-at-a-time-a-diagnostic-checklist-4038</link>
      <guid>https://dev.to/m_montazeri/vpn-troubleshooting-one-layer-at-a-time-a-diagnostic-checklist-4038</guid>
      <description>&lt;p&gt;Most VPN troubleshooting goes wrong in the same predictable way: three things get changed at once, and whatever happens next, nothing has been learned. The alternative is boring and effective — check one layer at a time, in an order that rules things out, and write down what each layer shows.&lt;/p&gt;

&lt;p&gt;One boundary before starting: troubleshooting means finding where a problem lives, not working against anyone's rules. On a network you don't control, or a device your organization manages, the policies in place stay in place. If a managed device is part of the picture, your organization's IT function is part of the troubleshooting — and switching off device security tooling is never a troubleshooting step.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Device basics first
&lt;/h2&gt;

&lt;p&gt;Start embarrassingly simple, because this layer resolves more than anyone likes to admit.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Restart the VPN client.&lt;/li&gt;
&lt;li&gt;If that changes nothing, restart the device.&lt;/li&gt;
&lt;li&gt;Confirm that the operating system and the client are updated. An update that has been pending for weeks is a suspect, not background noise.&lt;/li&gt;
&lt;li&gt;Note whether anything changed around the time the problem started: an update, a new app, different settings, a different location.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  2. Does the internet work without the VPN?
&lt;/h2&gt;

&lt;p&gt;Disconnect the VPN entirely and test ordinary browsing.&lt;/p&gt;

&lt;p&gt;If the connection is broken without the VPN, this isn't a VPN problem yet. Solve the underlying connection first, because nothing downstream is testable until this layer works.&lt;/p&gt;

&lt;p&gt;If the internet is fine without the VPN and wrong with it, you have genuinely narrowed something down. Write that down.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Client state: connected to what, exactly?
&lt;/h2&gt;

&lt;p&gt;Open the client and look, rather than assume.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Is it actually connected, or still trying?&lt;/li&gt;
&lt;li&gt;Is the right profile selected — the current one, not an older entry left over from a previous setup?&lt;/li&gt;
&lt;li&gt;Disconnect and reconnect once, deliberately, and watch what the client reports.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If multiple profiles have accumulated in the client, that is a finding in itself. Stale entries are a classic source of "it connects, but it behaves strangely."&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Profile freshness: is this the current profile?
&lt;/h2&gt;

&lt;p&gt;A setup that worked for months and then stopped is often a lifecycle event wearing a disguise. Check your provider's panel: is this profile still the active one, and does its status say what you expect?&lt;/p&gt;

&lt;p&gt;If the profile has been replaced, or its situation has changed, the fix is the supported flow, done fresh:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Download the current &lt;code&gt;.ovpn&lt;/code&gt; file from the panel.&lt;/li&gt;
&lt;li&gt;Open OpenVPN Connect.&lt;/li&gt;
&lt;li&gt;Choose &lt;strong&gt;Upload File&lt;/strong&gt; and import the profile.&lt;/li&gt;
&lt;li&gt;Save the profile and connect.&lt;/li&gt;
&lt;li&gt;Remove the superseded file and the stale client entry.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The panel and the current setup instructions are the source of truth for this layer; an old file or a saved note is not. (With Lisar, the panel is where a profile's current status lives.)&lt;/p&gt;

&lt;h2&gt;
  
  
  5. DNS behavior: connected, but names don't resolve
&lt;/h2&gt;

&lt;p&gt;Sometimes the connection is up and browsing still fails — pages don't load by name, apps can't find their services. Treat that as a pattern to record rather than something to fight blindly:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Reconnect once.&lt;/li&gt;
&lt;li&gt;Try a different site or app, to confirm it isn't one destination.&lt;/li&gt;
&lt;li&gt;Capture exactly what fails, and how.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Resist the urge to start changing settings based on advice threads. A precise description of DNS-shaped behavior — connected, but names failing — is one of the most useful things you can hand to official support, and one of the easiest things to destroy by changing configuration mid-diagnosis.&lt;/p&gt;

&lt;h2&gt;
  
  
  6. The different-network test
&lt;/h2&gt;

&lt;p&gt;This is the single most informative check: try the same device and the same setup on a different network — home versus mobile data, office versus home.&lt;/p&gt;

&lt;p&gt;The purpose is diagnostic. You are learning whether the problem follows the device or stays with the network.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If it follows the device, the earlier layers deserve another pass.&lt;/li&gt;
&lt;li&gt;If it stays with one network, that network's own behavior or policies are part of the story. On networks you don't control, the answer is choosing a network that works and noting the finding — not contending with the one that doesn't.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  7. Notes that make support fast
&lt;/h2&gt;

&lt;p&gt;If the checklist doesn't resolve the problem, you have still done the valuable part: you can hand official support a real report instead of a description.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Device and OS version:
VPN client and version:
When the problem started:
What changed around that time:
Layers checked, and what each showed:
Networks that behave differently:
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Check any screenshot for profile-specific details before sending it, and use official support channels rather than public posts.&lt;/p&gt;

&lt;p&gt;A five-minute report of that shape usually beats an hour of description, because it says where the problem &lt;em&gt;isn't&lt;/em&gt; — which is most of the diagnosis.&lt;/p&gt;

&lt;h2&gt;
  
  
  Short FAQ
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;What's the right order to troubleshoot a VPN problem?&lt;/strong&gt;&lt;br&gt;
One layer at a time: device basics, the internet without the VPN, client state, profile freshness in the panel, DNS-shaped behavior, and a different-network test — noting what each layer shows before moving on.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My VPN worked for months and suddenly stopped. Where do I start?&lt;/strong&gt;&lt;br&gt;
With the panel. Long-working setups that stop are often profile-lifecycle events: check whether the profile is still active, and if it has been replaced, download the current &lt;code&gt;.ovpn&lt;/code&gt; file and set it up again through the supported flow.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;It connects, but pages and apps can't find anything.&lt;/strong&gt;&lt;br&gt;
Capture that pattern precisely: reconnect once, confirm it isn't a single destination, and describe exactly what fails to official support rather than changing settings based on advice threads.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The VPN fails only on one network. What does that mean?&lt;/strong&gt;&lt;br&gt;
That the network's own behavior or policies are part of the story. The diagnostic value is knowing the problem stays with the network; the practical answer is using a network that works and including the finding in your support notes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Should I turn off security tools on my device to test the VPN?&lt;/strong&gt;&lt;br&gt;
No. Switching off device security tooling is never a troubleshooting step, and on a company-managed device the organization's IT function is part of the troubleshooting.&lt;/p&gt;

&lt;h2&gt;
  
  
  Closing
&lt;/h2&gt;

&lt;p&gt;The order matters more than any single step. Changing one thing at a time is what turns "the VPN is broken" into a statement precise enough to act on — and the notes taken along the way are the part that survives, whether you resolve it yourself or hand it to someone else.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;This article was adapted from the original Lisar documentation with AI-assisted editing and human review. No new testing was performed. Originally published at &lt;a href="https://lisar.io/articles/vpn-troubleshooting-checklist" rel="noopener noreferrer"&gt;lisar.io&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>vpn</category>
      <category>openvpn</category>
      <category>networking</category>
      <category>troubleshooting</category>
    </item>
    <item>
      <title>Why VPN services should not force users into proprietary apps</title>
      <dc:creator>Mohammad Montazeri</dc:creator>
      <pubDate>Mon, 06 Jul 2026 10:40:24 +0000</pubDate>
      <link>https://dev.to/m_montazeri/why-vpn-services-should-not-force-users-into-proprietary-apps-4e2n</link>
      <guid>https://dev.to/m_montazeri/why-vpn-services-should-not-force-users-into-proprietary-apps-4e2n</guid>
      <description>&lt;h1&gt;
  
  
  Why VPN services should not force users into proprietary apps
&lt;/h1&gt;

&lt;p&gt;Most VPN services try to own the entire user experience.&lt;/p&gt;

&lt;p&gt;They provide the server, the account, the routing layer, and then force the user into a proprietary app.&lt;/p&gt;

&lt;p&gt;That approach can be convenient, but it also creates a form of vendor lock-in.&lt;/p&gt;

&lt;p&gt;For many users, especially technical users, the VPN client itself is not the problem. They already trust standard clients such as OpenVPN or operating-system-level VPN setup flows.&lt;/p&gt;

&lt;p&gt;The harder question is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Why should the VPN service also force the client?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Standard clients still matter
&lt;/h2&gt;

&lt;p&gt;Standard VPN clients have several advantages:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Users can understand what they are importing.&lt;/li&gt;
&lt;li&gt;Configuration files are portable.&lt;/li&gt;
&lt;li&gt;Setup is not tied to one vendor app.&lt;/li&gt;
&lt;li&gt;Technical users can inspect and manage their own connection flow.&lt;/li&gt;
&lt;li&gt;The VPN provider does not need to own every part of the user experience.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;OpenVPN &lt;code&gt;.ovpn&lt;/code&gt; files are a good example of this model.&lt;/p&gt;

&lt;p&gt;The provider can generate the connection material, but the user can still import it into a standard OpenVPN-compatible client.&lt;/p&gt;

&lt;h2&gt;
  
  
  The service layer is still important
&lt;/h2&gt;

&lt;p&gt;Avoiding a proprietary app does not mean removing the service layer.&lt;/p&gt;

&lt;p&gt;A VPN service can still provide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;profile creation&lt;/li&gt;
&lt;li&gt;routing options&lt;/li&gt;
&lt;li&gt;credentials&lt;/li&gt;
&lt;li&gt;OpenVPN configuration downloads&lt;/li&gt;
&lt;li&gt;compatible L2TP/IPsec setup values&lt;/li&gt;
&lt;li&gt;active session visibility&lt;/li&gt;
&lt;li&gt;connection history&lt;/li&gt;
&lt;li&gt;quota and plan visibility&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The difference is that these features live in the dashboard and service layer, not inside a mandatory vendor-specific client.&lt;/p&gt;

&lt;h2&gt;
  
  
  The real distinction
&lt;/h2&gt;

&lt;p&gt;The goal is not to replace OpenVPN or native VPN clients.&lt;/p&gt;

&lt;p&gt;The goal is to reduce vendor lock-in around the VPN service layer.&lt;/p&gt;

&lt;p&gt;A user should be able to use a standard client they already trust, while still getting a managed profile and dashboard experience.&lt;/p&gt;

&lt;h2&gt;
  
  
  When a proprietary app still makes sense
&lt;/h2&gt;

&lt;p&gt;There are cases where a custom app is useful:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;non-technical users&lt;/li&gt;
&lt;li&gt;automatic server selection&lt;/li&gt;
&lt;li&gt;mobile onboarding&lt;/li&gt;
&lt;li&gt;advanced diagnostics&lt;/li&gt;
&lt;li&gt;kill-switch-style client behavior&lt;/li&gt;
&lt;li&gt;push-based account state updates&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But it should not always be the only option.&lt;/p&gt;

&lt;p&gt;Forcing every user into a proprietary app removes choice from users who already understand standard VPN clients.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I’m building
&lt;/h2&gt;

&lt;p&gt;I’m building Lisar Connect around this idea.&lt;/p&gt;

&lt;p&gt;Lisar Connect helps users create VPN connection profiles for standard clients such as OpenVPN and compatible L2TP/IPsec setup.&lt;/p&gt;

&lt;p&gt;The product focuses on profile creation, routing options, active sessions, connection history, and setup visibility — without forcing a proprietary VPN app.&lt;/p&gt;

&lt;p&gt;Website:&lt;br&gt;
&lt;a href="https://lisar.io" rel="noopener noreferrer"&gt;https://lisar.io&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Public setup docs:&lt;br&gt;
&lt;a href="https://github.com/lisarconnect/lisar-connect-docs" rel="noopener noreferrer"&gt;https://github.com/lisarconnect/lisar-connect-docs&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Feedback is welcome, especially from people who already use OpenVPN or manage VPN setups.&lt;/p&gt;

</description>
      <category>vpn</category>
      <category>openvpn</category>
      <category>security</category>
      <category>networking</category>
    </item>
  </channel>
</rss>
