Alert.png The wiki is deprecated and due to be decommissioned by the end of September 2022.
The content is being migrated to other supports, new updates will be ignored and lost.
If needed you can get in touch with EGI SDIS team using operations @ egi.eu.

Dynamic DNS

From EGIWiki
Jump to navigation Jump to search
EGI-Engage project: Main page WP1(NA1) WP3(JRA1) WP5(SA1) PMB Deliverables and Milestones Quality Plan Risk Plan Data Plan
Roles and
responsibilities
WP2(NA2) WP4(JRA2) WP6(SA2) AMB Software and services Metrics Project Office Procedures



Objective

DNS names for VMs in EGI Federated cloud are recently required by many VOs requirements  , however, current support for DNS resolution at site level is inadequate and fragmented.

The aim of this task is to provide united, federation-wide Dynamic DNS support for VMs in EGI Federated Clouds. Users can register their chosen meaningful and memorable DNS host names in given domains (e.g. my-server.vo-name.egi.eu) and assign to public IPs of their servers hosted in EGI Federated Cloud. By using Dynamic DNS, users can host services in EGI Federated Cloud with their meaningful service names, can freely move VMs from sites to sites without modifying server/client configurations (federated approach), can request valid server certificates in advance (critical for security)and many other advantages.

A short presentation of the task is available here


How to use EGI FedCloud Dynamic DNS service

Using EGI FedCloud Dynamic DNS service is very simple and intuitive via GUI portal. Just go to https://nsupdate.fedcloud.eu and follow the menu in the portal. Concretely:

  • Dynamic DNS service uses EGI CheckIn for authentication. If you have not EGI account yet, please register via https://sso.egi.eu/admin/
  • Log into Dynamic DNS service portal using EGI account via menu "Login" and click on "egi" button
  • Use "Overview" menu and click on "Add host" to register a new hostname in an available domain. Choose a hostname in an available domain and click on "Create"
  • You can edit/update/delete your registered hostnames in the "Overview" menu and click on the hostname


Please feel free to test and send your feedbacks/suggestions/comments to viet.tran@savba.sk

FAQ

  • For updating IP address, only hostname and its secret are needed. No user information is stored on VM in any form for updating IP.
  • NS-update server uses HTTPS protocol, hostname/secret are encrypted as data and not visible during transfer so it is secure to use the update URL
  • If you get an error message when logging into NS-update server via EGI CheckIn, your browser may have expired token from EGI CheckIn. Try open this link https://aai-dev.egi.eu/oidc/saml/login in your browser to refresh the token or restart your browser
  • DNS server set Time-to-Live (max time for caching DNS records) to 1 min for dynamic DNS, but MS Windows seems to not respect that. You can clear DNS cache in Windows with “ipconfig /flushdns” command with Administrator account
  • NS-update portal does not store host secret in recoverable form. If you forget the secret of your hostname, simply generate new one via "Show configuration" button in the host edit page. The old secret will be invalid.

API

Dynamic DNS update server uses dydns2 protocol, compatible with commercial providers like dyn.com, noip.com. The API is specified as follows:

GET /nic/update?hostname=yourhostname&myip=ipaddress
Host: nsupdate.fedcloud.eu
Authorization: Basic base64-encoded-auth-string
User-Agent:

Where

base64-encoded-auth-string: base64 encoding of username:password
username: your host name
password: your host secret
hostname in the parameter string can be omitted or must be the same as username
myip in the parameter string if omitted, the IP address of the client in the GET request will be used

Using hostname/secret as username/password can significantly increase security as no user credential is needed for updating IP address for VMs

Participants

Developer

  • Viet Tran (IISAS) viet.tran@savba.sk

Requirements

  • Basic functionalities
    • Web-based GUI interfaces for registering DNS hostnames for EGI users (done)
    • DNS server with Dynamic DNS support for forward DNS resolution (done)
    • Command-line clients for assigning registered hostnames to IPs (done)
  • Advanced functionalities
    • Using EGI Checkin services (authentication done, authorization ongoing)
    • Command-line client for registering DNS hostnames (next period)
  • Not compulsory but desired functionalities
    • Support for reverse DNS resolution (long term)

Used technologies

  • Backend: BIND9 DNS server with configuration for updating DNS names via RFC 2136
  • Frontend: nsupdate.info portal for registering and managing DNS names/domains
  • Clients: Wide support of common dynamic DNS clients like ddclient, inadyn, or just curl

Current status

  • A domain fedcloud.eu has been registered for operation
  • DNS servers are installed and configured for fedcloud.eu domain
  • Portal is installed on configured https://nsupdate.fedcloud.eu/
  • Users can register themselves and log in portal, can register DNS names within fedcloud.eu domain and assign to VMs
  • Authentication via EGI CheckIn service is supported

Next step

  • Authorization via VO memberships