Giter Site home page Giter Site logo

Comments (13)

ekleiner avatar ekleiner commented on July 27, 2024

I am wondering. Should we keep support of both: fallback and proxy or it is better not to overcomplicate and just switch to forward?

from fallback.

ekleiner avatar ekleiner commented on July 27, 2024

I would propose the next syntax for fallback plugin with proxy by default for now and making forward default and it in future:

{
    fallback [original] [proxy|forward] RCODE PROXY_PARAMS
}

from fallback.

fturib avatar fturib commented on July 27, 2024

@miekg , @johnbelamaric : what are the rules for backward incompatibility or deprecation for an external plugin such as Fallback ?

if @ekleiner switch implementation of inner proxy of Fallback from proxy.Proxy to forward.Proxy, most likely the parameters PROXY_PARAMS will change, which will create a backward incompatible path.

Example, right now:

. {
    ...
    fallback NXDOMAIN . 192.168.1.1:53 192.168.1.2:53 {
        protocol dns force_tcp
    }
}

will become easily:

. {
    ...
    fallback NXDOMAIN . 192.168.1.1:53 192.168.1.2:53 {
        force_tcp
    }
}

from fallback.

miekg avatar miekg commented on July 27, 2024

from fallback.

fturib avatar fturib commented on July 27, 2024

Maybe the wise way is to follow that path : deprecate current "fallback" and create a new one based on the proxy ability of forward plugin.

  • Big question would be: what name for the new plugin ?

from fallback.

ekleiner avatar ekleiner commented on July 27, 2024

I like suggestion from Francois a lot more then adding temporary parameters to current plugin.
Good idea to create new plugin based on current and make changes there.

from fallback.

fturib avatar fturib commented on July 27, 2024

can we name "ffallback" for "forward-fallback" ?

from fallback.

fturib avatar fturib commented on July 27, 2024

@miekg : is your reply about deprecation about external plugin ?
NOTE: as an external plugin it is not in the released image of CoreDNS ...

hum.. but how do we warn the change of stanza in that case ?
need to version the external plugins ? (at least the one hosted on coreDNS repo ?)

from fallback.

chrisohaver avatar chrisohaver commented on July 27, 2024

If we do change the name (if we actually need to), how about... "default" or "alternate"

from fallback.

fturib avatar fturib commented on July 27, 2024

The plan is to deprecate this Fallback plugin (which is based on Proxy plugin capability) and create a similar plugin named "Alternate" that will be based on Forward plugin (using proxy capability of Forward).

Current users of this Fallback plugin will have the deprecation time to move to the other Alternate plugin and adapt to the new syntax.

@miekg : are you ok with this solution ?

if Yes, can you create the repo "alternate" : https://github.com/coredns/alternate.
(I guess anyone can create it, but I am not sure what should be the setting and if anyone can do those settings once it is created).

Thanks

from fallback.

miekg avatar miekg commented on July 27, 2024

from fallback.

fturib avatar fturib commented on July 27, 2024

you should be able to create it.

You are right. I just did it.

@ekleiner : the repo is now available. I am able to define the settings for this repo (I guess because I am the creator).

from fallback.

fturib avatar fturib commented on July 27, 2024

Seems related to wrong link.
the right one is : https://github.com/coredns/alternate

from fallback.

Related Issues (6)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.