DNS Flushes for Other Browsers, Not Vivaldi
-
When you flush the DNS cache in Windows using
ipconfig /flushdns
, other browsers, such as Edge and Chrome, query the DNS and get the new correct IP address, but Vivaldi continues to load the site from the old cached IP address.This makes it hard to use Vivaldi for development, because after you change the name servers and clear the local DNS cache, Vivaldi ignores this, and I have to open the website in Chrome or Edge instead.
Are there any settings for getting Vivaldi to honor
ipconfig /flushdns
(like the other browsers), and load the site from the correct IP address? -
@WisTex Hello and Welcome to the Vivaldi Community
Vivaldi is based on Chromium, and should behave exactly the same on the network layer as Chrome/Edge, unless you have changed things in those browsers to non-default settings - you might not even know this if company GPO policies are in place).
One setting to check is the Chromium-internal settings at:
chrome://settings/security
If Secure DNS (DoH) is enabled, the browser will try to use a DoH provider (if it detects your OS is set to using one) instead of the local DNS. DoH is enabled by default in all Chromium-based browsers.I did a quick test using the internal:
vivaldi://net-internals/#dns
This is the same test page as the one in Edge/Chrome.Querying the domain
nrk.no
I see a DNS request going out once and then the domain is cached until I click Clear Host Cache. There is probably some time limit to this cache, how long I do not know.I tested this in all 3 browsers with the same result.
All Chromium browsers cache DNS and do not immediately react to flushing the OS cache. They quite aggressively cache independent of the OS.
I don't have a local DNS server apart from my router and no ability to change DNS results so my testing is limited to checking DNS port 53 queries going out.
If you have the necessary data to show Vivaldi behaves any differently than Chrome/Edge, you have checked in the other browsers and made sure the settings are standard (not for instance overridden by enterprise GPO policies), then please report a bug.
Please read:
carefully and report the bug to Vivaldi bugtracker
-
@Pathduck said in DNS Flushes for Other Browsers, Not Vivaldi:
All Chromium browsers cache DNS and do not immediately react to flushing the OS cache. They quite aggressively cache independent of the OS.
What's weird is that Google Chrome shows the site immediately, but Vivaldi does not. I am not sure what the difference between Google Chrome and Vivaldi is that would cause this. Theoretically, they should behave the same, since they are both are based on Chromium, but for some reason they do not behave the same.
And the settings at
chrome://settings/security
are the same in Google Chrome and Vivaldi. -
@WisTex Then I suggest you investigate this more thoroughly using the tools at your disposal. I use a simple DNS Query Sniffer:
https://www.nirsoft.net/utils/dns_query_sniffer.html
This of course only logs port 53 requests and not DoH requests.To see how DNS is handled internally in the browser use:
vivaldi://net-export
This is also the same tool as in the other browsers.Of course you could use WireShark or similar. In case DoH is used, decoding traffic is difficult of course but not too hard using WireShark, google how to do it in Chromium browsers.
-
Hi,
Have you tested with Ctrl+R/F5?This should do a full V Refresh.
Vivaldi Backup | Reset + Extra Steps
-
@Zalex108 said in DNS Flushes for Other Browsers, Not Vivaldi:
Have you tested with Ctrl+R/F5?
This should do a full V Refresh.Yes, it works in Chome and Edge, not Vivaldi.
-
@WisTex A Ctrl+R/F5 only does a cached refresh. To do a bypass cache you need to use Ctrl+F5. Or keep DevTools open with the disable cache option set.
There is no difference here between browsers either. Except if using the Ctrl+Refresh button trick, which does not work in Vivaldi's UI, although I wish it would, at least for those users who seem to think every browser UI must behave exactly the same
You can set the "Force Page Reload" hotkey in Vivaldi's settings (which is something you can't do in other browsers).
Here's a good article I found about how DNS caching works in Chromium browsers:
https://textslashplain.com/2022/03/31/chromiums-dns-cache/ -
@Pathduck said in DNS Flushes for Other Browsers, Not Vivaldi:
A Ctrl+R/F5 only does a cached refresh. To do a bypass cache you need to use Ctrl+F5.
Yes, I know. I always use
Ctrl-F5
. I never useF5
by itself, ever, since it doesn't actually clear the cache.As I said, it works in Chrome and Edge, not Vivaldi. Not sure why. Supposedly they all use the same code base.
Three hours later, Vivaldi finally saw the new IP address.
It is interesting that you can go to
vivaldi://net-internals/#dns
to refresh the cache there, but it won't respectipconfig /flushdns
.I am not sure what is going on, but I suppose that is why I have Opera, Firefox, Chrome, Edge, Vivaldi, and Brave all installed. If one browser acts up, I just switch to another one.
-
@WisTex said in DNS Flushes for Other Browsers, Not Vivaldi:
but it won't respect ipconfig /flushdns
No browser here "respects" that command, even Firefox. Like I said browsers cache DNS quite aggressively for performance reasons.
The only "browsers" I can get to do a new DNS requests after a flush is Lynx and Curl
Do a net-export when recreating the issue in Vivaldi, and look at the log in the viewer for DNS cache entries. Share the log if you want, I could have a look.
You can use DevTools/Network as well to see what IP the Remote Address field gives.
Also you haven't given any details as to what error message you get when Vivaldi fails loading the page after a DNS change. CONNECTION_REFUSED, NXDOMAIN, NAME_NOT_RESOLVED etc?
-
@Pathduck said in DNS Flushes for Other Browsers, Not Vivaldi:
Also you haven't given any details as to what error message you get when Vivaldi fails loading the page after a DNS change. CONNECTION_REFUSED, NXDOMAIN, NAME_NOT_RESOLVED etc?
It shows the website on the old server. There is no error message. It just shows the website from the wrong server.
As I said, you change the name servers on the server, and do a
ipconfig /flushdns
command. If you do not do that command, the browser will use the computer's DNS cache.Just so you understand that I used to teach networking as an adjunct instructor at a local college and am not just an average user, let me explain how caching works.
'- The browser caches the website and the sometimes the DNS (depending on the browser).
- The computer caches the DNS.
- Sometimes the ISP caches the DNS too.
- Sometimes the web host does not update the DNS to reflect the name server change immediately, usually because they run those changes as a batch instead of instantly. But if you use WHM/cPanel, the server's DNS is updated instantly.
If you do not clear the computer's DNS cache, it does not matter if you refresh the browser's DNS cache. And if the ISP caches, you just have to wait. That is why we tell our web hosting customers they have to wait 24 to 48 hours for the DNS to propagate.
So, I fully understand what caching is, and who is doing the caching.
And, I already told you what was happening in the first post. Vivaldi loads the website from the old server instead of the new one, even though other browser update faster or even immediately. There are no error message.
-
@WisTex OK, since you clearly understand caching and DNS and you're the one in front of your computer, I wish you the best of luck figuring it out.
I have reached the limit of my network troubleshooting skills
-
@Pathduck said in DNS Flushes for Other Browsers, Not Vivaldi:
OK, since you clearly understand caching and DNS and you're the one in front of your computer, I wish you the best of luck figuring it out.
I have reached the limit of my network troubleshooting skillsI was just reporting a potential bug. Despite Vivaldi using the same codebase as other browser, Vivaldi tends to have some weird quirks, like this one.
If you don't care, I guess that explains the bugs in Vivaldi. It is just weird that out of the 5 browsers on my computer, only Vivaldi had a problem with updating the DNS cache in a timely manner.
I already told you the results of the troubleshooting, if you read my previous posts. The fact that you asked for what the error message was meant that you didn't read my posts.
Vivaldi uses the wrong IP address when none of the other browsers do. And all of the tools you gave me confirm that. None of that fixes the issue.
I only mentioned my background, because it felt like you were talking down to me and copy & pasting your replies. Asking me what the error was clearly meant you didn't read my posts thoroughly or took me seriously.
I appreciate your attempts to help, though. I did what you told me, and it all confirmed what I said. Vivaldi doesn't update the DNS cache as fast as other browsers.
I have reached the limit of my troubleshooting too. If you browser is buggy or behaves differently than other browsers, then so be it. That is why I have 5 browser installed.
-
@WisTex said in DNS Flushes for Other Browsers, Not Vivaldi:
If you don't care, I guess that explains the bugs in Vivaldi.
I think there might be some misunderstanding here - I am a volunteer spending my spare time trying to help other users with my (limited) knowledge. I do not work at Vivaldi.
it felt like you were talking down to me and copy & pasting your replies.
I am sorry if I came across like that. I was trying to give you the information and tools needed to troubleshoot the problem on your end, as you're basically the only one able to do so.
And sure, Vivaldi has a lot of bugs and quirks. But it's important to remember that Vivaldi is mostly just a UI built on top of Chromium. The base Chromium code is basically not changed except for some Vivaldi-specific native code maybe.
But maybe they have done some changes to DNS caching or networking code that causes this to happen. One thing I do know is there is no setting in Vivaldi to control this behaviour.
It's supposed to behave just like other browsers here, and if it doesn't, that might indeed be a bug.
I posted the bug reporting procedure above, and I urge that if you feel this is a bug, try to collect as much information as possible about your setup and the issue, and report it. This is the only way a bug will have a chance to be fixed.
-
@WisTex said in DNS Flushes for Other Browsers, Not Vivaldi:
@Pathduck said in DNS Flushes for Other Browsers, Not Vivaldi:
Also you haven't given any details as to what error message you get when Vivaldi fails loading the page after a DNS change. CONNECTION_REFUSED, NXDOMAIN, NAME_NOT_RESOLVED etc?
It shows the website on the old server. There is no error message. It just shows the website from the wrong server.
As I said, you change the name servers on the server, and do a
ipconfig /flushdns
command. If you do not do that command, the browser will use the computer's DNS cache.Just so you understand that I used to teach networking as an adjunct instructor at a local college and am not just an average user, let me explain how caching works.
'- The browser caches the website and the sometimes the DNS (depending on the browser).
- The computer caches the DNS.
- Sometimes the ISP caches the DNS too.
- Sometimes the web host does not update the DNS to reflect the name server change immediately, usually because they run those changes as a batch instead of instantly. But if you use WHM/cPanel, the server's DNS is updated instantly.
If you do not clear the computer's DNS cache, it does not matter if you refresh the browser's DNS cache. And if the ISP caches, you just have to wait. That is why we tell our web hosting customers they have to wait 24 to 48 hours for the DNS to propagate.
So, I fully understand what caching is, and who is doing the caching.
And, I already told you what was happening in the first post. Vivaldi loads the website from the old server instead of the new one, even though other browser update faster or even immediately. There are no error message.
WisTex,
Thanks so much for taking the time to explain the principles of caching as well as theipconfig /flushdns
command. In the past I have performed the ipconfig /flushdns command, but at this particular moment in time due to my age and some other medical issues currently going on in my life I can't remember as to why I in fact used that command. I normally go by this simple rule when it comes to computer technology, if it isn't broke don't try and fix it.
David -
@Pathduck said in DNS Flushes for Other Browsers, Not Vivaldi:
I am sorry if I came across like that. I was trying to give you the information and tools needed to troubleshoot the problem on your end, as you're basically the only one able to do so.
It's been a rough couple of weeks, so I probably read something into your comments that was not there. So I apologize if I came across as a bit huffy.
@Pathduck said in DNS Flushes for Other Browsers, Not Vivaldi:
I am a volunteer spending my spare time trying to help other users with my (limited) knowledge. I do not work at Vivaldi.
I appreciate your work and dedication. Your posts were useful and contained information I did not know. Through your comments, I was able to confirm my hypothesis that Vivaldi does cache it longer, at least under these circumstances.
I would have to do a scientific test with multiple domains to analyze it fully, but from what I've gathered so far, it appears that every time I change the DNS on a website, Vivaldi is consistently the last one to recognize it.
@Pathduck said in DNS Flushes for Other Browsers, Not Vivaldi:
But maybe they have done some changes to DNS caching or networking code that causes this to happen. One thing I do know is there is no setting in Vivaldi to control this behaviour.
I do know there are settings on the back end that control this (somewhere in the source code). I am guessing that these settings were tweaked in an attempt to make the pages load faster. Most browsers that are an offshoot of another browser do this. It's what makes each one unique.
To be fair, it is a trade off. More caching means faster loading pages... but then certain things like DNS changes don't propagate to you as fast.
So, I appreciate your help, and you taught me a few tricks, as well. So, thank you.
-
@Davy49 said in DNS Flushes for Other Browsers, Not Vivaldi:
Thanks so much for taking the time to explain the principles of caching as well as the ipconfig /flushdns command. In the past I have performed the ipconfig /flushdns command
You're very welcome.
I'll add another tip. If you want to avoid the caching completely, try not to open that website 24 hours before the DNS change. In that case, your browser and your computer's cache will have expired and it will query the DNS to get the IP address.
So, if you plan ahead, there will be no cache for that domain name. That's not always possible, so that is where
ipconfig /flushdns
comes in. And, as I learned yesterday,vivaldi://net-internals/#dns
for Vivalidi's cache. -
I can not understand why a developer is not able to switch off Windows DNS cache permanently if their dev workstation use to connect hosts with changing IPs?
-
disable Vivaldi DNS client
โ https://admx.help/?Category=VivaldiBrowser&Policy=Vivaldi.Policies.Chromium::BuiltInDnsClientEnabled -
disable Windows DNS cache
REG add "HKLM\SYSTEM\CurrentControlSet\services\Dnscache" /v Start /t REG_DWORD /d 4 /f
//EDIT: Please do not feel offended.
i am a old IT gal, programmer, webdev and Linux system administrator.
I can not imagine why a person who develops websites/apps does not have such knowledge in our days where you can get infvormation so ewsy in WWW. -
-
@DoctorG said in DNS Flushes for Other Browsers, Not Vivaldi:
//EDIT: Please do not feel offended.
i am a old IT gal, programmer, webdev and Linux system administrator.
I can not imagine why a person who develops websites/apps does not have such knowledge in our days where you can get infvormation so ewsy in WWW.I am not a professional developer, nor do I want to be one.
I am a small business owner and author, and have enough knowledge to make my own websites. (In other words, install scripts, update HTML, write if then statements in PHP, and modify other people's code.)
If I need something complex, I hire someone. If I am doing something simple, like installing a script on a server or updating DNS or updating content, I can do it myself. You don't need to be a developer to do simple tasks like that.
And, frankly, Google and Bing search has degraded to the point where it is very hard to find relevant information anymore, especially if you don't know the exact terminology or don't know that a feature exists.
And, one of the purposes of a forum is to ask stuff and get answers. That seems to be more reliable than Google or Bing these days.
So I apologize for asking, but, as I said, I am not a professional developer.
-
@WisTex Ah, ok, you are a regular web site owner and author.
Well did my hints about disabling DNS Client and Windows DNS cache helped you? -
@DoctorG said in DNS Flushes for Other Browsers, Not Vivaldi:
Ah, ok, you are a regular web site owner and author.
Well did my hints about disabling DNS Client and Windows DNS cache helped you?Yeah, I do know enough programming "to be dangerous" as they say. And I do like messing around with my own websites. I used to be a computer operator in multiple data centers, and I did teach networking and Microsoft Office and other things for a local college for a bit. But those have different skillsets than programming. Now I run my own business and write.
And, yes, both of those were very useful. Thank you.