#StackBounty: #networking #18.04 #server #dns Ubuntu 18.04 DNS resolution fails after a while

Bounty: 50

When I ping google.com on my Ubuntu 18.04, it gives me

ping: google.com: Temporary failure in name resolution

I would then proceed to run

sudo service systemd-resolved start

My /etc/resolv.conf has a symbolic link as shown

/etc/resolv.conf -> /run/systemd/resolve/stub-resolv.conf

The content is as follow

# This file is managed by man:systemd-resolved(8). Do not edit.
#
# This is a dynamic resolv.conf file for connecting local clients to the
# internal DNS stub resolver of systemd-resolved. This file lists all
# configured search domains.
#
# Run "systemd-resolve --status" to see details about the uplink DNS servers
# currently in use.
#
# Third party programs must not access this file directly, but only through the
# symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a different way,
# replace this symlink by a static file or a different symlink.
#
# See man:systemd-resolved.service(8) for details about the supported modes of
# operation for /etc/resolv.conf.

nameserver 127.0.0.53
options edns0

My question is after running sudo service systemd-resolved start, it would work for a while (Maybe couple of hours), then when i ping google.com again, it would give the name resolution error. How can I permanently enable my system to resolve name resolution? I believe it is something to do with the systemd-resolved? Have been experiencing this over a couple of days. Thanks


Get this bounty!!!

#StackBounty: #python #dns #twisted Mock DNS server using Twisted

Bounty: 100

I’m trying to write a Twisted-based mock DNS server to do some tests.

Taking inspiration from this guide I wrote a very simple server that just resolves everything to 127.0.0.1:

from twisted.internet import defer, reactor
from twisted.names import dns, error, server


class MockDNSResolver:

    def _doDynamicResponse(self, query):
        name = query.name.name
        record = dns.Record_A(address=b"127.0.0.1")
        answer = dns.RRHeader(name=name, payload=record)
        authority = []
        additional = []
        return , authority, additional

    def query(self, query, timeout=None):
        print("Incoming query for:", query.name)
        if query.type == dns.A:
            return defer.succeed(self._doDynamicResponse(query))
        else:
            return defer.fail(error.DomainError())


if __name__ == "__main__":
    clients = [MockDNSResolver()]
    factory = server.DNSServerFactory(clients=clients)
    protocol = dns.DNSDatagramProtocol(controller=factory)
    reactor.listenUDP(10053, protocol)
    reactor.listenTCP(10053, factory)
    reactor.run()

The above is working just fine with dig and nslookup (from a different terminal):

$ dig -p 10053 @localhost something.example.org A +short
127.0.0.1

$ nslookup something.else.example.org 127.0.0.1 -port=10053
Server:     127.0.0.1
Address:    127.0.0.1#10053

Non-authoritative answer:
Name:   something.else.example.org
Address: 127.0.0.1

I’m also getting the corresponding hits on the terminal that’s running the server:

Incoming query for: something.example.org
Incoming query for: something.else.example.org

Then, I wrote the following piece of code, based on this section about making requests and this section about installing a custom resolver:

from twisted.internet import reactor
from twisted.names.client import createResolver
from twisted.web.client import Agent


d = Agent(reactor).request(b'GET', b'http://does.not.exist')
reactor.installResolver(createResolver(servers=[('127.0.0.1', 10053)]))


def callback(result):
    print('Result:', result)


d.addBoth(callback)
d.addBoth(lambda _: reactor.stop())

reactor.run()

But this fails (and I get no lines in the server terminal). It appears as if the queries are not going to the mock server, but to the system-defined server:

Result: [Failure instance: Traceback: <class 'twisted.internet.error.DNSLookupError'>: DNS lookup failed: no results for hostname lookup: does.not.exist.
/.../venv/lib/python3.6/site-packages/twisted/internet/_resolver.py:137:deliverResults
/.../venv/lib/python3.6/site-packages/twisted/internet/endpoints.py:921:resolutionComplete
/.../venv/lib/python3.6/site-packages/twisted/internet/defer.py:460:callback
/.../venv/lib/python3.6/site-packages/twisted/internet/defer.py:568:_startRunCallbacks
--- <exception caught here> ---
/.../venv/lib/python3.6/site-packages/twisted/internet/defer.py:654:_runCallbacks
/.../venv/lib/python3.6/site-packages/twisted/internet/endpoints.py:975:startConnectionAttempts
]

I’m using:

  • macOS 10.14.6 Python 3.6.6, Twisted 18.9.0
  • Linux Mint 19.1, Python 3.6.9, Twisted 19.7.0

I appreciate any help, please let me know if additional information is required.

Thanks!


Get this bounty!!!

#StackBounty: #android #dns #github-pages #nslookup #dig My users get "net::err_name_not_resolved"

Bounty: 50

I did get messages from android phone users that my website is not loading.

When an android phone clicks on a link to go to my website it gets the error: net::err_name_not_resolved

On computers and iPhones, I don’t get the error.
When the android user copies the link and pastes it into the browser the website loads correctly.

Link to my website:
https://www.losangelestorrevieja.com

I have custom resource records from google:

  • Name: *
  • type:CNAME
  • Info:www.losangelestorrevieja.com.

.

  • Name: wwww
  • type:CNAME
  • Info:enzotrompeneers.github.io.

if I nslookup www.losangelestorrevieja.com I don’t receive an IP address


Get this bounty!!!

#StackBounty: #networking #macos #dns #mdns Multicast DNS really slow to respond in macOS Mojave

Bounty: 100

I have a Macbook Air running 10.14 Mojave, and an iPhone with a certain app that needs to sync via WebDAV with the Mac from time to time. The way I configured it is to add in the app’s settings http://my-macbook-air.local as the WebDAV server. Both devices are connected to the same local subnet, using 192.168.1.X as the IP range, etc.

Anyway, this didn’t happen when the Mac was running 10.13, but ever since I upgraded to Mojave, most of the time the iPhone takes forever to find the Mac via multicast DNS. I try to sync and it says that it can’t find http://my-macbook-air.local for about 5 minutes… until it finally resolves. I have also checked using a Ping app in my iPhone: I tell it to ping my-macbook-air.local and it doesn’t find the host for minutes… until it finally finds it.

What’s going on?


Get this bounty!!!

#StackBounty: #pi-2 #dns #raspbian-buster #pi-hole PiHole not resolving local DNS entries

Bounty: 50

I have a piHole set up on my network with address 192.168.2.10
My router is 192.168.2.1 and the DNS settings on the router point to 192.168.2.10 meaning all traffic that goes via the router (which is everything) uses the local pihole for DNS. The router’s firmware is DD-WRT v3.0-r33413 mini (09/27/17)

This is working great and ads are being blocked as expected, however, I want to add some local network DNS entries.

As an example, I want to be able to type http://router in a web browser and have that resolve to http://192.168.2.1

I have followed this tutorial but had no luck (I even restarted the pi)
When I try to ping router or ping router.local from my Windows machine, I get a could not find host error. However, I can ping router from the pi but I can’t ping router.local

My etc/pihole/lan.list looks like this

192.168.2.1 router.local router

I have also tried adding the same entry as above to the /etc/hosts file again with no luck.

What am I missing here?


Get this bounty!!!

#StackBounty: #pi-2 #dns #raspbian-buster PiHole not resolving local DNS entries

Bounty: 50

I have a piHole set up on my network with address 192.168.2.10
My router is 192.168.2.1 and the DNS settings on the router point to 192.168.2.10 meaning all traffic that goes via the router (which is everything) uses the local pihole for DNS. The router’s firmware is DD-WRT v3.0-r33413 mini (09/27/17)

This is working great and ads are being blocked as expected, however, I want to add some local network DNS entries.

As an example, I want to be able to type http://router in a web browser and have that resolve to http://192.168.2.1

I have followed this tutorial but had no luck (I even restarted the pi)
When I try to ping router or ping router.local from my Windows machine, I get a could not find host error. However, I can ping router from the pi but I can’t ping router.local

My etc/pihole/lan.list looks like this

192.168.2.1 router.local router

I have also tried adding the same entry as above to the /etc/hosts file again with no luck.

What am I missing here?


Get this bounty!!!

#StackBounty: #macos #dns #configuration-managment macOS – Where is the documentation for the Dynamic Store keys and their usage?

Bounty: 50

I am making an app that modifies some DNS settings, and to do it I am using the SystemConfiguration framework’s SCDynamicStore. This can be used to modify the values of specific keys in the store, but I want to see some documentation for the usage of keys by the system. Is there anywhere I can find this information?

Specifically, I want to modify the DNS servers of specific network interfaces. It seems as though each interface has a key that looks something like the following (my Wi-Fi interface):

State:/Network/Service/5D1F97DD-8AC2-45EE-7552-A69C5C41254F/DNS

But there is also a global key State:/Network/Global/DNS. I want to know the specifics of how the global key is used and when it overrides the NIC-specific key, as I noticed that when changing DNS servers through Mac Network settings, the global key gets updated and not the Wi-Fi-specific key. I know the first one is for Wi-Fi because the key disappears/reappears from scutil output when I disable/enable Wi-Fi.

It would be great to have some sort of reference for the keys in the Dynamic Store and what they are used for. What’s the point of having an API to manage them if we don’t know the specification of what each entry is used for?


Get this bounty!!!

#StackBounty: #16.04 #dns How do I allow more than 3 DNS servers in Ubuntu 16?

Bounty: 50

In my /etc/network/interfaces I have multiple servers listed on dns-nameservers, one set of ubuntu servers has 3, another 4. We had no issues until we were forced to add yet 2 more to each, but we still could not successfully resolve using the new DNS servers. After some investigation, we found that only 3 DNS servers were copied into /etc/resolv.conf. We are able to resolve our immediate issue by putting the 3 primary servers in there and omitting the backup DNS servers, but I’d like to get keep all necessary DNS servers available.

As for why so many:

  • 8.8.8.8 is used because it gets updated information faster than our internal ones
  • Our internal network DNS
  • Another DNS for a DB cluster


Get this bounty!!!

#StackBounty: #dns #hosts-file `.dev` TLD resolves to 127.0.0.1

Bounty: 150

My Mac (Mojave 10.14) is unable to access any website with a .dev domain name, such as get.dev. I tried running $ ping get.dev and got the following output:

PING get.dev (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.044 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.161 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.070 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.166 ms
64 bytes from 127.0.0.1: icmp_seq=4 ttl=64 time=0.189 ms
64 bytes from 127.0.0.1: icmp_seq=5 ttl=64 time=0.056 ms
^C
--- get.dev ping statistics ---
6 packets transmitted, 6 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.044/0.114/0.189/0.059 ms

I know it’s been popular to remap .dev to localhost, and thought I might have done that at some point in the past and forgot about it. However, when I run $ cat /etc/hosts:

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1   localhost
255.255.255.255 broadcasthost
::1             localhost

I’m not sure where to continue troubleshooting this. Are there any other hosts files that might add additional entries?

EDIT: My DNS is set up to use 1.1.1.1, according to their instructions.


Get this bounty!!!

#StackBounty: #heroku #dns #cname Heroku's DNS is causing conflicts with Google Suite MX records

Bounty: 100

Heroku DNS is causing troubles: cannot recieve any email at myuser@stickersgallito.com that uses Google Suite as Mailbox.

My host provider is Punto.pe a peruvian company.

My projects is hosted in Heroku, in there I’ve 2 DNS:

1) www.stickersgallito.pe -> ancient-crab-bwwmzXXXXXXXXXXXX.herokudns.com
2) stickersgallito.pe -> functional-wallaby-XXXXXXXXXXXXXXXX.herokudns.com

enter image description here

I need that people can visit the site entering: www.stickersgallito.pe or just stickersgallito.pe.

So I’ve entered these 2 records as CNAMEs in my Host Provider Registry Panel.

Problem:

I’ve also set up other tools like MailGun and Google Suite (to have mailboxes like omar@stickersgallito.pe). MailGun functions correctly, I can visit the page either using: www.stickersgallito.pe or stickersgallito.pe.

But I cannot recieve emails at omar@stickersgallito.pe.

I’ve consulted my Host Provider and the say that the record for
stickersgallito.pe ->
functional-wallaby-XXXXXXXXXXXXXXXX.herokudns.com is the
problem
. It’s interfering with other records.

They don’t offer any solution, but point to Heroku for a response.
Heroku point me to their documentation and if after following it’s steps it doesn’t work I should talk to my Host Provider.

My host provider says that if I can provide an IP Address from Heroku we could solve this. Heroku’s doesn’t offer an IP address as far as I know.

Google Documentation to Set Up MX Records:

https://support.google.com/a/answer/140034?hl=en

What can I do?

DNSs in Host Provider:

enter image description here

Registers:

enter image description here


Get this bounty!!!