Questions about the nohost.me / noho.st domains

Who is running them?
Who is configuring them?

Why can’t us users configure them?

Are they meant to be used at all or are they thought of as dummy DNS’es?
I want to use them for duniter. No need to have very special names for those.

Is it ipv4 only?
Can it be brought to ipv6 only?

They are hosted on Yunohost’s infrastructure (e.g. just like this forum)
They are automatically configured by Yunohost’s instance who register them.

Because the point of .nohost.me / .noho.st domains is that they are configured automatically according to Yunohost configuration, so that you don’t have to care about the technicity of DNS and can focus on the stuff that really matters.

Yes, many people are using them in real life.

?

Theoretically, YunoHost automatically adapts the YunoHost configuration according to the IPv4 and v6 it finds. If you have no IPv6, it won’t set any AAAA record. I don’t know about IPv6-only, maybe it does work, but so far there’s no way to force YunoHost to configure the DynDNS as IPv6-only if YunoHost detects an IPv4 on the machine (except by tweaking the code).

Ohhh… so it’s handled by DynDNS by default?

Then I understand. Thank you.

Another question, how can I see if my domain has an ipv6 AAAA record?

I’m asking because when I type the following command:

admin@Xroklaus:~ $ sudo yunohost domain dns-conf duniter-folatt.nohost.me
Warning: This command shows you what is the *recommended* configuration. It does not actually set up the DNS configuration for you. It is your responsability to configure your DNS zone in your registrar according to this recommendation.
# Basic ipv4/ipv6 records
@ 3600 IN A my.ip.v.4
* 3600 IN A my.ip.v.4

# XMPP
_xmpp-client._tcp 3600 IN SRV 0 5 5222 duniter-folatt.nohost.me.
_xmpp-server._tcp 3600 IN SRV 0 5 5269 duniter-folatt.nohost.me.
muc 3600 IN CNAME @
pubsub 3600 IN CNAME @
vjud 3600 IN CNAME @

# Mail
@ 3600 IN MX 10 duniter-folatt.nohost.me.
@ 3600 IN TXT "v=spf1 a mx ip4:my.ip.v.4 -all"
mail._domainkey 3600 IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDKacF1vAOtfxe9F3nrW6vw+cZj+Y8Klwb5z0pnLs7y5p82kkxoZPdJ/H4jA4qmxnLF4C0scYTZkQLuLyGkSnGJdZink/ZhjdvFKhwVkFqF+sNNGOcaBwnGgTJxLAXvh/vKaOB1zs6alHGNqouX5ppMQzNFCygRx4o3BECrOCFMEwIDAQAB"
_dmarc 3600 IN TXT "v=DMARC1; p=none"

Ipv6 is missing.

You can run

dig AAAA YOURDOMAIN

from any linux computer on the internet

Looks like I have no IPv6 for Server B.

admin@Xroklaus:~ $ dig AAAA duniter-folatt.nohost.me

; <<>> DiG 9.9.5-9+deb8u13-Raspbian <<>> AAAA duniter-folatt.nohost.me
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 29361
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;duniter-folatt.nohost.me.	IN	AAAA

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Wed Nov 29 15:10:37 UTC 2017
;; MSG SIZE  rcvd: 42

Server B does have IPv6.

admin@Xroklaus:~ $ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether b8:27:eb:3f:e0:d9 brd ff:ff:ff:ff:ff:ff
    inet 192.168.178.30/24 brd 192.168.178.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 2001:983:8610:1:2239:6fcb:6144:21d2/64 scope global noprefixroute dynamic 
       valid_lft 5213sec preferred_lft 3124sec
    inet6 fe80::7664:c1e:6989:14b0/64 scope link 
       valid_lft forever preferred_lft forever
3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
    link/ether b8:27:eb:6a:b5:8c brd ff:ff:ff:ff:ff:ff
    inet6 fe80::5f05:b808:f4ad:b037/64 scope link tentative 
       valid_lft forever preferred_lft forever

Server A can find it’s IPv6.

admin@YunoHost:~ $ dig AAAA mydomain.tld

; <<>> DiG 9.9.5-9+deb8u13-Raspbian <<>> AAAA mydomain.tld
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 14401
;; flags: qr aa rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;mydomain.tld.			IN	AAAA

;; ANSWER SECTION:
mydomain.tld.		0	IN	AAAA	2001:983:8610:1:f3d5:e2a7:5d97:f45c

;; Query time: 5 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Wed Nov 29 16:30:49 CET 2017
;; MSG SIZE  rcvd: 58

I can just update the IP’s with sudo yunohost dyndns update correct?

I’m getting Communication with server failed: operation canceled error with this.

admin@Xroklaus:/usr/lib/moulinette/yunohost $ sudo yunohost dyndns update
('ipv4:', None)
('old_ipv4', '0.0.0.0')
('ipv6:', '2001:983:8610:1:2239:6fcb:6144:21d2')
('old_ipv6', '0000:0000:0000:0000:0000:0000:0000:0000')
('test 6:', '/etc/yunohost/dyndns/Kduniter-folatt.nohost.me.+157+04055.private')
Outgoing update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id:      0
;; flags:; ZONE: 0, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
;; ZONE SECTION:
;nohost.me.			IN	SOA

;; UPDATE SECTION:
_xmpp-client._tcp.duniter-folatt.nohost.me. 0 ANY ANY 
_xmpp-server._tcp.duniter-folatt.nohost.me. 0 ANY ANY 
muc.duniter-folatt.nohost.me. 0	ANY	ANY	
pubsub.duniter-folatt.nohost.me. 0 ANY	ANY	
vjud.duniter-folatt.nohost.me. 0 ANY	ANY	
duniter-folatt.nohost.me. 0	ANY	ANY	
duniter-folatt.nohost.me. 0	ANY	ANY	
mail._domainkey.duniter-folatt.nohost.me. 0 ANY	ANY 
_dmarc.duniter-folatt.nohost.me. 0 ANY	ANY	
duniter-folatt.nohost.me. 0	ANY	ANY	
*.duniter-folatt.nohost.me. 0	ANY	ANY	
_xmpp-client._tcp.duniter-folatt.nohost.me. 3600 IN SRV	0 5 5222 duniter-folatt.nohost.me.
_xmpp-server._tcp.duniter-folatt.nohost.me. 3600 IN SRV	0 5 5269 duniter-folatt.nohost.me.
muc.duniter-folatt.nohost.me. 3600 IN	CNAME	duniter-folatt.nohost.me.
pubsub.duniter-folatt.nohost.me. 3600 IN CNAME	duniter-folatt.nohost.me.
vjud.duniter-folatt.nohost.me. 3600 IN	CNAME	duniter-folatt.nohost.me.
duniter-folatt.nohost.me. 3600	IN	MX	10 duniter-folatt.nohost.me.
duniter-folatt.nohost.me. 3600	IN	TXT	"v=spf1 a mx ip4:my.ip.v.4 -all"
mail._domainkey.duniter-folatt.nohost.me. 3600 IN TXT "v=DKIM1\; k=rsa\; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDKacF1vAOtfxe9F3nrW6vw+cZj+Y8Klwb5z0pnLs7y5p82kkxoZPdJ/H4jA4qmxnLF4C0scYTZkQLuLyGkSnGJdZink/ZhjdvFKhwVkFqF+sNNGOcaBwnGgTJxLAXvh/vKaOB1zs6alHGNqouX5ppMQzNFCygRx4o3BECrOCFMEwIDAQAB"
_dmarc.duniter-folatt.nohost.me. 3600 IN TXT	"v=DMARC1\; p=none"
duniter-folatt.nohost.me. 3600	IN	A	my.ip.v.4
*.duniter-folatt.nohost.me. 3600 IN	A	my.ip.v.4

; Communication with server failed: operation canceled
Error: Unable to update IP address on DynDNS

I’m getting there.

domain.py has a function that’s picking my ipv4 but not my ipv6:

def get_public_ip(protocol=4):
...
>>> urllib.urlopen('https://ip6.yunohost.org').read()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/urllib.py", line 87, in urlopen
    return opener.open(url)
  File "/usr/lib/python2.7/urllib.py", line 213, in open
    return getattr(self, name)(url)
  File "/usr/lib/python2.7/urllib.py", line 443, in open_https
    h.endheaders(data)
  File "/usr/lib/python2.7/httplib.py", line 1035, in endheaders
    self._send_output(message_body)
  File "/usr/lib/python2.7/httplib.py", line 879, in _send_output
    self.send(msg)
  File "/usr/lib/python2.7/httplib.py", line 841, in send
    self.connect()
  File "/usr/lib/python2.7/httplib.py", line 1242, in connect
    HTTPConnection.connect(self)
  File "/usr/lib/python2.7/httplib.py", line 822, in connect
    self.timeout, self.source_address)
  File "/usr/lib/python2.7/socket.py", line 571, in create_connection
    raise err
IOError: [Errno socket error] [Errno 113] No route to host