This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Uplink balancing and DNS

Today I setup uplink balancing, and I discovered a "nice" surprice. I have 2 DSL lines and both my ISP prohibit the use of their DNS server to ips that does not belongs to their network. So first DSL can use its own dns server, second DSL can use its own dns server. Obviously I can put all dns servers in Dns forwarder list, but I suppose that this can cause some slowness in performing dns queries.

What do you think about this scenario? 

Thanks
eclipse79


This thread was automatically locked due to age.
  • you have two possibilities.

    First, and recommended
    Create the dns servers interface bound to the according interfaces. the uplink balancer will use this bindings since 8.300 and route the requests through the right interface. Maybe put these servers as recommended in my tweaking guide (follow the link in my signature) into a availability group, that you do not run into strange issues if one of the uplinks fails ( unexpected DNS timeouts for some users due rr behaviour of the DNS forwarder if multiple DNS servers are in list )

    second one is to use public DNS servers as google or opendns. Possible issues with antispam / RBLs in this scenario are mentioned too in the tweaking guide by some people.

    / Sascha

    Sent from my iPad using Astaro.org (finally got One)

  • First, and recommended
    Create the dns servers interface bound to the according interfaces.


    Yo Sascha, thanks for the instant reply [:)]
    Do you mean the "interface" combo in DNS host definition?

    Thanks
    eclipse79
  • Hi all,

    Does your ISP assign you the DNS Servers via DHCP or PPPoE? Or do you Need to configure them manually?

    Because as far as I know we take care of this situation automatically by adding hidden multipath rules that make sure the correct DNS server ip gets sent out the the right interface.
    Yet this only works if the DNA servers are assigned dynamically.

    If you use manuall assignment, than you should be able to create multipath rules that set the traffic out the correct interface.

    If you need more help, please let me know.

    Thx gert

  • Does your ISP assign you the DNS Servers via DHCP or PPPoE? Or do you Need to configure them manually?


    Hi Gert!
    Yes, I need to configure them manually...


    If you use manuall assignment, than you should be able to create multipath rules that set the traffic out the correct interface.

    If you need more help, please let me know.


    Uhm... tell me if this is correct:

    At the moment, in uplink balancing, I have two external interfaces (ext1, ext2) and I have these multipath rules:

    1) Source: DMZ, services: Web Surfing, Dest: Internet, Bind interface: Ext1
    2) Source: Any, services: Web Surfing, Dest: Internet, Bind interface: Ext2

    So I have to add these two rules:
    1a) Source: DMZ, services: DNS, Dest: Internet, Bind interface: Ext1
    2a) Source: Any, services: DNS, Dest: Internet, Bind interface: Ext2

    Is it what you suggested? If yes, I am a little confused, how could these rules force each external interface to use their own dns server? [:S]

    Thank you 
    eclipse79
  • @Sascha and all: I transitioned all of our clients to OpenDNS precisely because it works better with Anti-Spam.  ISPs will, sooner or later, take advantage of DNS hijacking to get extra revenues, so I would recommend against using their DNS servers.

    If you do want to use Multipath rules, then I think Gert had in mind the creation of a Network group containing the DNS servers for each ISP, and then using:

    1a) Source: DMZ, services: DNS, Dest: {DNS servers for ISP1}, Bind interface: Ext1
    2a) Source: Any, services: DNS, Dest: {DNS servers for ISP2}, Bind interface: Ext2

    Having said that, I like Sascha's idea about using an Availability Group containing all of the servers with each Host definition bound to the appropriate interface.  Although that violates my personal rule against using anything other than 'Interface: >', I can't think of any reason doing it for this would cause a problem - I think it should work the way Sascha recommends.

    I hope you have the time to try each approach and confirm that both work. [:)]

    Cheers - Bob

  • I hope you have the time to try each approach and confirm that both work. [[:)]]


    I will try as soon as possible Gert's idea, but I cannot follow sasha's suggestion because I have v8.103 (he said that uplink balancer use this bindings since 8.30x).

    Anyway the support suggested me another way: the Policy Route!  [[:)]]

    bye
    eclipse79
  • Hi eclipse 
    I had the same issue, I did as Bob suggested. and it working fine.
    I have two rules 

    any dns (ISP1 DNS servers) byinterface ext1
    any dns (ISP2 DNS servers) byinterface ext2
  • Hi eclipse 
    I had the same issue, I did as Bob suggested. and it working fine.
    I have two rules 

    any dns (ISP1 DNS servers) byinterface ext1
    any dns (ISP2 DNS servers) byinterface ext2


    I wonder, what happens, if one of the uplink fails ? Multipath normally should do a failover of the rules to the next available interface, which *may* cause DNS problems in this setting.

    But I didn't test the behaviour myself, so it's only an assumption.

    If anyone can test this, please post your findings.

    However: That's the reason, why I recommend to use availability group containing interface bound host objects for the DNS servers, which should avoid such issues in a failover scenario (IF they happen...).
  • Hi Sascha.
    After doing some experiments, I have found out that working without "availability group" works better.  Just put some of your ISP and general DNS servers in the "DNS Forwarders" of Astaro.
    The reason for this is that Astaro try all DNS servers at the same time and then use the fastest.  (I have noticed it's changing periodically).
    Using "availability group", it will go to the first one first, and only if it doesn't work, or take too long time, it will go to the second one.

  • First, and recommended
    Create the dns servers interface bound to the according interfaces. the uplink balancer will use this bindings since 8.300 and route the requests through the right interface. Maybe put these servers as recommended in my tweaking guide (follow the link in my signature) into a availability group, that you do not run into strange issues if one of the uplinks fails ( unexpected DNS timeouts for some users due rr behaviour of the DNS forwarder if multiple DNS servers are in list )


    Hi Sasha, 
    I have upgraded to v8.302 and I want to use your first suggestion. Do you think it's better to use two differents availability groups, one for DNS used in first interface, the other for DNS used in second interface?

    Thanks
    eclipse79