Recommended Posts

I have two servers that serve the same function. One is used as a backup of the other.

server1.domain.local

server2.domain.local

How would I create a link such as link1.tsf.local which will always point to server1.domain.local but in the event that server is down points to server2.domain.local

Link to comment
https://www.neowin.net/forum/topic/1120078-using-dns-to-provide-redundancy/
Share on other sites

using what for your nameserver, bind, microsoft?

This sort of thing is not done in dns - now some dns services provide this feature but its not actually done in the dns server software... You need another system that monitors the systems and changes the record in dns when the server goes down.

example of dns service provider that provides this functionality

http://www.zoneedit.com/failover.html

And for this to work you need to use a very low TTL to make it feasible.

Here is a script that you could run to change your records for you

http://www.freebsdwiki.net/index.php/BIND,_dynamic_DNS,_failover_A_records

There is nothing in MS dns to do that - like I said you would need some script or software to monitor the systems and then change the dns record. You could modify the script I linked to do what you want. MS dns might a bit more difficult to work with than bind.

That is NOT WHAT he asked at all!! That is simple round robin, 1 time get this address, next time get that address.

You can load balance that way - not failover!

"which will always point to server1.domain.local but in the event that server is down points to server2.domain.local"

That is NOT WHAT he asked at all!! That is simple round robin, 1 time get this address, next time get that address.

You can load balance that way - not failover!

"which will always point to server1.domain.local but in the event that server is down points to server2.domain.local"

It achieves the same effect. The second server must be up and running in order to provide fall-over, why not use it and load balance as well.

This is how it would work: http://www.nber.org/sys-admin/dns-failover.html

"It achieves the same effect."

No not really - right off their page

"If one is down. the questions are, will the browser try the second IP address. and how long does it wait to do so?"

You have NO control over what a users browser is, you have no control if the browser will try the other IP. Does his version MS dns even return both IPs on a query? Not sure? The article states BIND does, he is using MS - I know 2k8r2 dns returns both, but not sure what MS dns his is using. If that's the case if 1 server is down you have a %50 change of users getting the BAD IP.

Is is NOT what the user asked for at all. He asked for "failover" - DNS does not provide that feature, round robin is not a failover mechanism. And again he clearly stated he did not want to query server 2 unless server 1 was down. In a round robin setup - your going to get a % of the users hitting all server listed. Maybe the 2nd server only has a page saying - hey sorry we are down sort of thing.

That is what he asked for, not round robin. Maybe it would work, but that is not what he asked for - why didn't he has for load balancing functionality if that is what he wanted?

It doesn't know if up or down, it returns ALL the entries you have there. DNS does not have any method to check if something is up or down, alive, answering pings, nothing. Its just a listing of IPs from names, and names from IPs - nothing more.

Now with the newer browsers if dns returns 1.2.3.4, and 1.2.3.5 and 1.2.3.6 for example - SOME browsers might try .4 and if does not answer in some period of time, might be 10 seconds, might be 30 seconds try .5, etc..

But not all browsers do this, if this is all internal you could check your brower your users use to see what they do.

Keep in mind if .4 .5 and .6 are all up then load would be split 33% roughly each. Since the order returned would rotate as queries came in for the record.

  • 5 months later...

There is nothing in MS dns to do that - like I said you would need some script or software to monitor the systems and then change the dns record. You could modify the script I linked to do what you want. MS dns might a bit more difficult to work with than bind.

Budman - the script you linked to - does it work in Windows environment?

Its a perl script, you can run perl on windows - will it work, have no idea pointed to it like 6 months ago as an example of how you could check for something and then change dns, etc.

Its quite possible someone has written something for windows, etc. That was an example since the functionality asked for is not inherent to dns

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Microsoft finally admits its default Windows 11 25H2, 24H2 action broke key legacy component by Sayan Sen Microsoft last week released Windows 11 KB5094126 and KB5093998 as the latest Patch Tuesday updates. Following that the company also published the accompanying dynamic updates under KB5094149, KB5095971, and KB5094156. So far the company has acknowledged two known issues that have popped up after the release which include bugged-out Office apps as well as the Recycle Bin; though there could be more at play too. Speaking of bugs and issues, Microsoft seems to have finally acknowledged a problem that probably has been around for close to a year. That's because back in July of 2025 the company made a default change to the latest Windows 11 versions, wherein it switched to JScript9Legacy on Windows 11 24H2 and later releases. Hence following the release of version 25H2 in October 2025, JScript9Legacy also remained default-enabled. As a result there has been a compatibility issue ever since then. For those wondering, by switching to JScript9Legacy Microsoft intended to improve the security of modern Windows PCs by reducing vulnerabilities tied to legacy scripting like cross-site scripting (XSS), among others. XSS exploits can allow cyber-attackers to attach malicious code onto legitimate websites and use them to execute the code when a potential victim loads such a website. Hence the new JScript9Legacy engine enforced stricter execution policies and improved object handling, which should help mitigate such attacks. Microsoft today has published a new support article detailing the problem. Neowin spotted it while browsing. The company says that JScript global definitions and execution context may fail to persist across scripts, potentially breaking older dependent apps and web-based components that relied on this legacy behavior. In the article Microsoft has confirmed that the issue stems from its move away from the older jscript9.dll engine in favor of jscript9legacy.dll. As mentioned above, while the newer engine was designed to address vulnerabilities and strengthen security it also changes how JScript handles execution context. As a result functions and definitions loaded by one script could no longer remain available to subsequent scripts once execution ended. The company notes that some applications worked correctly on earlier Windows versions because the older JScript engine automatically retained global definitions and execution state between scripts. Under the newer model though that behavior is disabled by default causing certain legacy workloads and polyfill-dependent scripts to fail. Microsoft says it addressed the problem via the KB5077241 update though the fix had not been enabled automatically in the following updates. As such admins must explicitly turn on persistent JScript execution context using a Registry setting that the tech giant shared today. The configuration can be applied to individual processes or system-wide through the FEATURE_ENABLE_PERSISTENCE registry key. The steps have been outlined below: Run the following command to create the feature control registry key: reg add "HKLM\Software\Policies\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_ENABLE_PERSISTENCE" Under this key, create a new DWORD (32-bit) value. Configure the value as follows: To enable persistence for specific processes only: Set the value to 1 for each target process name. To enable persistence for all processes: Add * as the key name and set its value to 1. You can find the official support article here on Microsoft's website.
    • The possibility that milk gathers back into a glass implies that gravity can be 'reversed'.
    • VidCoder 12.20 by Razvan Serea  VidCoder is a DVD/Blu-ray ripping and video transcoding application for Windows. It uses HandBrake as its encoding engine. Calling directly into the HandBrake library gives it a more rich UI than the official HandBrake Windows GUI. VidCoder can rip DVDs but does not defeat the CSS encryption found in most commercial DVDs. You’ll need the NET 8 Desktop Runtime. If you don’t have it, VidCoder will prompt you to download and install it. The Portable version is self-contained and does not require any .NET Runtime to be installed. You do not need to install HandBrake for VidCoder to work. Feature list: Multi-threaded MP4, MKV containers Completely integrated encoding pipeline: everything is in one process and no huge intermediate temporary files H.264, H.265, MPEG-4, MPEG-2, VP8, Theora video Hardware-accelerated encoding with AMD VCE, Nvidia NVENC and Intel QuickSync AAC, MP3, Vorbis, AC3, FLAC audio encoding and AAC/AC3/MP3/DTS/DTS-HD passthrough Target bitrate, size or quality for video 2-pass encoding Decomb, detelecine, deinterlace, rotate, reflect, chroma smooth, colorspace filters Powerful batch encoding with simultaneous encodes Customizable Pickers to automatically pick audio and subtitle tracks, destination, titles and more Instant source previews Creates small encoded preview clips Pause, resume encoding VidCoder 12.20 changes: Updated HandBrake core to 1.11.2. Download: VidCoder 12.20 | 47.0 MB (Open Source) Download: Portable VidCoder 12.19 | 89.3 MB Link: VidCoder Home Page | Github | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • Too soon, I'm still not over this death!
  • Recent Achievements

    • Week One Done
      Jordan Smith earned a badge
      Week One Done
    • Reacting Well
      BizSAR earned a badge
      Reacting Well
    • First Post
      AndreaB earned a badge
      First Post
    • Week One Done
      Huge Trailer earned a badge
      Week One Done
    • Week One Done
      Classifyskilleducation earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      593
    2. 2
      +Edouard
      185
    3. 3
      PsYcHoKiLLa
      77
    4. 4
      Michael Scrip
      73
    5. 5
      Steven P.
      66
  • Tell a friend

    Love Neowin? Tell a friend!