Difference between revisions of "GOCDB/Release4/Development/ipv6support"
Line 7: | Line 7: | ||
=IPv6 Support= | =IPv6 Support= | ||
GOCDB needs to support IPv6 addresses for <strong>Sites</strong> and <strong>Services</strong>. To do this we propose adding new fields on Site and Service to allow an optional/additional IPv6 address range to be defined in addition to the existing IPv4 address. | GOCDB needs to support IPv6 addresses for <strong>Sites</strong> and <strong>Services</strong>. To do this we propose adding new fields on Site and Service to allow an optional/additional IPv6 address range to be defined in addition to the existing IPv4 address. | ||
Requirement: https://ggus.eu/index.php?mode=ticket_info&ticket_id=100472 | |||
The proposed format | The proposed format is: | ||
<pre> | <pre> | ||
<IPv6Address>[/<IPv6Address>] | <IPv6Address>[/<IPv6Address>] | ||
Line 31: | Line 32: | ||
This also means that some IPv6 have an odd number of groups for instance this is valid and has 6 groups one of which is blank: | This also means that some IPv6 have an odd number of groups for instance this is valid and has 6 groups one of which is blank: | ||
<pre>fe80::2000:aff:fea7:f7c</pre> | <pre>fe80::2000:aff:fea7:f7c</pre> | ||
==PI Changes== | |||
An additional element will be added for the following PI methods: | |||
get_site, get_service_endpoint, get_service_group. | |||
The changes to the XML output are highlighed below: | |||
get_site: | |||
<source lang="XML"> | |||
<?xml version="1.0"?> | |||
<results> | |||
<SITE ID="1" PRIMARY_KEY="194G0" NAME="RAL-LCG2"> | |||
<PRIMARY_KEY>194G0</PRIMARY_KEY> | |||
<SHORT_NAME>RAL-LCG2</SHORT_NAME> | |||
<GOCDB_PORTAL_URL> | |||
https://next.gocdb.eu/portal/index.php?Page_Type=View_Object&object_id=1133&grid_id=0 | |||
</GOCDB_PORTAL_URL> | |||
<OFFICIAL_NAME>RAL, GridPP Tier-1 Computing, Oxfordshire UK</OFFICIAL_NAME> | |||
<SITE_DESCRIPTION>Rutherford Appleton Laboratory - Tier1</SITE_DESCRIPTION> | |||
<HOME_URL>http://mywebsite.com</HOME_URL> | |||
<CONTACT_EMAIL>contact@demo.com</CONTACT_EMAIL> | |||
<CONTACT_TEL>+44 (0) 1235 446777 </CONTACT_TEL> | |||
<ALARM_EMAIL>alarm@demo.com</ALARM_EMAIL> | |||
<GIIS_URL> ldap://site-bdii.gridpp.rl.ac.uk:2170/mds-vo-name=RAL-LCG2,o=grid | |||
</GIIS_URL> | |||
<TIER>2</TIER> | |||
<COUNTRY_CODE>GB</COUNTRY_CODE> | |||
<COUNTRY>United Kingdom</COUNTRY> | |||
<ROC>UKI</ROC> | |||
<SUBGRID>Tier1A</SUBGRID> | |||
<PRODUCTION_INFRASTRUCTURE>Production</PRODUCTION_INFRASTRUCTURE> | |||
<CERTIFICATION_STATUS>Certified</CERTIFICATION_STATUS> | |||
<TIMEZONE>Europe/London</TIMEZONE> | |||
<LATITUDE>51</LATITUDE> | |||
<LONGITUDE>-1</LONGITUDE> | |||
<DOMAIN> | |||
<DOMAIN_NAME>gridpp.rl.ac.uk</DOMAIN_NAME> | |||
</DOMAIN> | |||
<SITE_IP>0.0.0.0/255.255.255.254<SITE_IP> <!-- New element here --> | |||
<SITE_IPV6>fe80::2000:aff:fea7:f7c/fe80::2000:aff:fea7:f7c<SITE_IPV6> <!-- New element here --> | |||
<EXTENSIONS> | |||
<EXTENSION> | |||
<LOCAL_ID>01</LOCAL_ID> | |||
<KEY>VO</KEY> | |||
<VALUE>LHCB</VALUE> | |||
</EXTENSION> | |||
</EXTENSIONS> | |||
</SITE> | |||
</results> | |||
</source> | |||
get_service_endpoint: | |||
<source lang="XML"> | |||
<?xml version="1.0"?> | |||
<results> | |||
<SERVICE_ENDPOINT PRIMARY_KEY="651G0"> | |||
<PRIMARY_KEY>651G0</PRIMARY_KEY> | |||
<HOSTNAME>foo.bar.ral</HOSTNAME> | |||
<GOCDB_PORTAL_URL>https://next.gocdb.eu/portal/index.php?.....elided</GOCDB_PORTAL_URL> | |||
<HOSTDN>/C=UK/O=test/OU=demo/CN=foo.bar.ral</HOSTDN> | |||
<HOST_OS>SL5</HOST_OS> | |||
<HOST_ARCH>x64<HOST_ARCH> | |||
<BETA>Y<BETA/> | |||
<SERVICE_TYPE>CE</SERVICE_TYPE> | |||
<HOST_IP>4.4.4.4</HOST_IP> | |||
<HOST_IPV6>fe80::2000:aff:fea7:f7c</HOST_IPV6> <!-- New element here --> | |||
<CORE/> | |||
<IN_PRODUCTION>N</IN_PRODUCTION> | |||
<NODE_MONITORED>N</NODE_MONITORED> | |||
<SITENAME>RAL-LCG2</SITENAME> | |||
<COUNTRY_NAME>United Kingdom</COUNTRY_NAME> | |||
<COUNTRY_CODE>GB</COUNTRY_CODE> | |||
<ROC_NAME>UKI</ROC_NAME> | |||
<URL>https://some.serviceurl.eu:8443/services/se<URL/> | |||
<EXTENSIONS> | |||
<EXTENSION> | |||
<LOCAL_ID>01</LOCAL_ID> | |||
<KEY>VO</KEY> | |||
<VALUE>LHCB</VALUE> | |||
<EXTENSION> | |||
</EXTENSIONS> | |||
</SERVICE_ENDPOINT> | |||
</results> | |||
</source> | |||
get_service_group: | |||
<source lang="XML"> | |||
<?xml version="1.0" encoding="UTF-8"?> | |||
<results> | |||
<SERVICE_GROUP PRIMARY_KEY="57654G0"> | |||
<NAME>OPSTOOLS</NAME> | |||
<DESCRIPTION>All EGI Operational Tools</DESCRIPTION> | |||
<MONITORED>Y</MONITORED> | |||
<CONTACT_EMAIL>gocdb-admins@mailtalk.ac.uk</CONTACT_EMAIL> | |||
<GOCDB_PORTAL_URL> https://elided </GOCDB_PORTAL_URL> | |||
<SERVICE_ENDPOINT> | |||
<HOSTNAME>goc.egi.eu</HOSTNAME> | |||
<GOCDB_PORTAL_URL>https://elided</GOCDB_PORTAL_URL> | |||
<SERVICE_TYPE>egi.GOCDB</SERVICE_TYPE> | |||
<HOST_IP/> | |||
<HOST_IPV6/> <!-- New element here --> | |||
<HOSTDN>/C=UK/O=eScience/OU=CLRC/L=RAL/CN=goc.egi.eu</HOSTDN> | |||
<IN_PRODUCTION>Y</IN_PRODUCTION> | |||
<NODE_MONITORED>Y</NODE_MONITORED> | |||
<EXTENSIONS> | |||
<EXTENSION> | |||
<LOCAL_ID>01</LOCAL_ID> | |||
<KEY>VO</KEY> | |||
<VALUE>LHCB</VALUE> | |||
</EXTENSION> | |||
</EXTENSIONS> | |||
</SERVICE_ENDPOINT> | |||
<SERVICE_ENDPOINT> | |||
…elided… | |||
</SERVICE_ENDPOINT> | |||
</SERVICE_GROUP> | |||
</results> | |||
</source> |
Revision as of 13:12, 4 March 2014
Main | EGI.eu operations services | Support | Documentation | Tools | Activities | Performance | Technology | Catch-all Services | Resource Allocation | Security |
GOC DB menu: | Home • | Documentation Index • |
<< Back to GOCDB/Release4/Development
IPv6 Support
GOCDB needs to support IPv6 addresses for Sites and Services. To do this we propose adding new fields on Site and Service to allow an optional/additional IPv6 address range to be defined in addition to the existing IPv4 address. Requirement: https://ggus.eu/index.php?mode=ticket_info&ticket_id=100472
The proposed format is:
<IPv6Address>[/<IPv6Address>]
(Where the forward slash and second address is optional, and IPv6Address has the format as described below - copied from Wikipedia):
IvP6, has a few rules that allow you to drop a lot of characters so it changes a lot. So this is the full representation – 8 groups of 4 characters separated by colon (8 groups of 4 hexiadecimals).
2001:0db8:85a3:0000:0000:8a2e:0370:7334
When there are zeros these groups can be omitted so the above can also be shown as (note the pair of double colons in the middle):
2001:0db8:85a3:::8a2e:0370:7334
Also leading zeros from each group can also be omitted so some groups may have less than 4 characters, so the second and second from last group here are valid despite only having 3 characters:
2001:db8:85a3:::8a2e:370:7334
Some IPv6 addresses have the 5-8th group all made up of zeros:
2001:adb8:85a3:7334:0000:0000:0000:0000
So all the trailing zeros can be removed so this is valid:
2001:adb8:85a3:7334
This also means that some IPv6 have an odd number of groups for instance this is valid and has 6 groups one of which is blank:
fe80::2000:aff:fea7:f7c
PI Changes
An additional element will be added for the following PI methods: get_site, get_service_endpoint, get_service_group.
The changes to the XML output are highlighed below:
get_site:
<?xml version="1.0"?>
<results>
<SITE ID="1" PRIMARY_KEY="194G0" NAME="RAL-LCG2">
<PRIMARY_KEY>194G0</PRIMARY_KEY>
<SHORT_NAME>RAL-LCG2</SHORT_NAME>
<GOCDB_PORTAL_URL>
https://next.gocdb.eu/portal/index.php?Page_Type=View_Object&object_id=1133&grid_id=0
</GOCDB_PORTAL_URL>
<OFFICIAL_NAME>RAL, GridPP Tier-1 Computing, Oxfordshire UK</OFFICIAL_NAME>
<SITE_DESCRIPTION>Rutherford Appleton Laboratory - Tier1</SITE_DESCRIPTION>
<HOME_URL>http://mywebsite.com</HOME_URL>
<CONTACT_EMAIL>contact@demo.com</CONTACT_EMAIL>
<CONTACT_TEL>+44 (0) 1235 446777 </CONTACT_TEL>
<ALARM_EMAIL>alarm@demo.com</ALARM_EMAIL>
<GIIS_URL> ldap://site-bdii.gridpp.rl.ac.uk:2170/mds-vo-name=RAL-LCG2,o=grid
</GIIS_URL>
<TIER>2</TIER>
<COUNTRY_CODE>GB</COUNTRY_CODE>
<COUNTRY>United Kingdom</COUNTRY>
<ROC>UKI</ROC>
<SUBGRID>Tier1A</SUBGRID>
<PRODUCTION_INFRASTRUCTURE>Production</PRODUCTION_INFRASTRUCTURE>
<CERTIFICATION_STATUS>Certified</CERTIFICATION_STATUS>
<TIMEZONE>Europe/London</TIMEZONE>
<LATITUDE>51</LATITUDE>
<LONGITUDE>-1</LONGITUDE>
<DOMAIN>
<DOMAIN_NAME>gridpp.rl.ac.uk</DOMAIN_NAME>
</DOMAIN>
<SITE_IP>0.0.0.0/255.255.255.254<SITE_IP> <!-- New element here -->
<SITE_IPV6>fe80::2000:aff:fea7:f7c/fe80::2000:aff:fea7:f7c<SITE_IPV6> <!-- New element here -->
<EXTENSIONS>
<EXTENSION>
<LOCAL_ID>01</LOCAL_ID>
<KEY>VO</KEY>
<VALUE>LHCB</VALUE>
</EXTENSION>
</EXTENSIONS>
</SITE>
</results>
get_service_endpoint:
<?xml version="1.0"?>
<results>
<SERVICE_ENDPOINT PRIMARY_KEY="651G0">
<PRIMARY_KEY>651G0</PRIMARY_KEY>
<HOSTNAME>foo.bar.ral</HOSTNAME>
<GOCDB_PORTAL_URL>https://next.gocdb.eu/portal/index.php?.....elided</GOCDB_PORTAL_URL>
<HOSTDN>/C=UK/O=test/OU=demo/CN=foo.bar.ral</HOSTDN>
<HOST_OS>SL5</HOST_OS>
<HOST_ARCH>x64<HOST_ARCH>
<BETA>Y<BETA/>
<SERVICE_TYPE>CE</SERVICE_TYPE>
<HOST_IP>4.4.4.4</HOST_IP>
<HOST_IPV6>fe80::2000:aff:fea7:f7c</HOST_IPV6> <!-- New element here -->
<CORE/>
<IN_PRODUCTION>N</IN_PRODUCTION>
<NODE_MONITORED>N</NODE_MONITORED>
<SITENAME>RAL-LCG2</SITENAME>
<COUNTRY_NAME>United Kingdom</COUNTRY_NAME>
<COUNTRY_CODE>GB</COUNTRY_CODE>
<ROC_NAME>UKI</ROC_NAME>
<URL>https://some.serviceurl.eu:8443/services/se<URL/>
<EXTENSIONS>
<EXTENSION>
<LOCAL_ID>01</LOCAL_ID>
<KEY>VO</KEY>
<VALUE>LHCB</VALUE>
<EXTENSION>
</EXTENSIONS>
</SERVICE_ENDPOINT>
</results>
get_service_group:
<?xml version="1.0" encoding="UTF-8"?>
<results>
<SERVICE_GROUP PRIMARY_KEY="57654G0">
<NAME>OPSTOOLS</NAME>
<DESCRIPTION>All EGI Operational Tools</DESCRIPTION>
<MONITORED>Y</MONITORED>
<CONTACT_EMAIL>gocdb-admins@mailtalk.ac.uk</CONTACT_EMAIL>
<GOCDB_PORTAL_URL> https://elided </GOCDB_PORTAL_URL>
<SERVICE_ENDPOINT>
<HOSTNAME>goc.egi.eu</HOSTNAME>
<GOCDB_PORTAL_URL>https://elided</GOCDB_PORTAL_URL>
<SERVICE_TYPE>egi.GOCDB</SERVICE_TYPE>
<HOST_IP/>
<HOST_IPV6/> <!-- New element here -->
<HOSTDN>/C=UK/O=eScience/OU=CLRC/L=RAL/CN=goc.egi.eu</HOSTDN>
<IN_PRODUCTION>Y</IN_PRODUCTION>
<NODE_MONITORED>Y</NODE_MONITORED>
<EXTENSIONS>
<EXTENSION>
<LOCAL_ID>01</LOCAL_ID>
<KEY>VO</KEY>
<VALUE>LHCB</VALUE>
</EXTENSION>
</EXTENSIONS>
</SERVICE_ENDPOINT>
<SERVICE_ENDPOINT>
…elided…
</SERVICE_ENDPOINT>
</SERVICE_GROUP>
</results>