...
- Had to get subnet enabled for IPv6 - Mark.
- To find subnet for the host (e.g. pinger) use NetDB (or ping, or ifconfig on actual host) to find IPv4 address
- Use http://network.slac.stanford.edu/subnets to find list of subnets
- Enter first 3 octets of the host (e.g. 134.79.197.) in the filter
- Taylor blocked ipv6 by default for security reasons, so had to request to enable IPv6 for pinger in Taylor (INC0175010) - Karl
for taylor.opts on a linux server, I believe would look something like ipv6addr=2620:114:d000:25a1::80/64,2620:114:d000:25a1::1
- Modifications to the PAN rules - Kent
- It needed an IPv6 address in NetDB
It may seem to have an IPv6 address by looking at ifconfig you may see
Code Block eth0 Link encap:Ethernet HWaddr 00:50:56:BE:3D:4C inet addr:134.79.197.214 Bcast:134.79.197.255 Mask:255.255.255.128 inet6 addr: 2620:114:d000:2716:250:56ff:febe:3d4c/64 Scope:Global inet6 addr: fe80::250:56ff:febe:3d4c/64 Scope:Link
The global ipv6 address which is currently configured on this host is probably the slaac (auto-configured) from the router.
If the last couple octets look like a MAC address (versus zero or a very small number), then the address was almost certainly auto-configured.The other way to convince yourself is to look at the DNS record for the given system (e.g. “host www3”). If there is no IPv6 address displayed, then the address got autoconfigured.
Code Block 447cottrell@rhel6-64f:~$host www3 www3.slac.stanford.edu has address 134.79.197.214
If it does not have an IPv6 address then we have to assign one from the relevant range (e.g. for www3)
Code Block ksa@cdlogin3 $ /afs/slac/g/scs/net/bin/subnet all | grep SERV01-DMZ-WEBSERV 134.79.197.128 SERV01-DMZ-WEBSERV 134.79.197.129 255.255.255.128 Serv01 Web Servers DMZ (vlan 1814) 2620:114:d000:2716:: SERV01-DMZ-WEBSERV 2620:114:d000:2716::1 ffff:ffff:ffff:ffff:: Serv01 Web Servers DMZ (vlan 1814)
To test:
Code Block ksa@www3 $ curl -I -v www3 * About to connect() to www3 port 80 (#0) * Trying 2620:114:d000:2716::8... connected * Connected to www3 (2620:114:d000:2716::8) port 80 (#0) [?]
Modifications Required
pinger2.pl
Modified to enable both the hostname and IPv6 address to be the same. It is integrated with the new xml files generated from NODEDETAILS. It is backward compatible. Version >= 3.0 is IPv6 version.
traceroute.pl
Modified to make work on Solaris and Linux:
my $version="7.3, 12/13/2017, Les Cottrell";
# Added \[\] to untainting of dig command. Appears to be needed for IPv6.
# Do not avoid testing internal domains if server is IPv6 host,
# Added avoid calling gethostbyname6 if hostname is already an ipv6 address
# Fixed how Solaris mis-interprets system(@args) sometimes (saw in IPv6)
getdata.pl
Created nodes-ipv6.pl to add the PingER IPv6 MA 2001:da8:270:2018:f816:3eff:fef3:bd3. See here for addition.
Copied getdata.pl to getdata-ipv6.pl and modified to use the /afs/slac/package/pinger/nodes-ipv6.cf file and write to the /nfs/slac/g/net/pinger/pingerdata/ipv6/data/ directory (e.g. /nfs/slac/g/net/pinger/pingerdata/ipv6/data/2001:da8:270:2018:f816:3eff:fef3:bd3/ping-2017-12-19.txt.gz) when running getdata-ipv6.pl 2001:da8:270:2018:f816:3eff:fef3:bd3 2017-12-19 1. Also replaced IPv4 address checks with sub chck_ip{} to test for both IPv4 and IPv6 addresses.
wrap-analyze-hourly.pl
Call with:
wrap-analyze-hourly.pl --usemetric --dataset ipv6 --by by-node --size 100 --set_metric 3 --date 2017-12-19
...
The other analyze scripts (daily, monthly and yearly) did not need modification.
APEX/Oracle user interface to PingER NODEDETAILS database
This did not accept IPv6 Addresses, see INC0176849 and INC0176966. The NODEDETAILS Oracle Apex database now accepts IPv6 addresses as the name (in case there is no name for the host) and as the IP address. It is backward compatible and also (as before) accepts IPv4 addresses in both fields.
...
- To access the SLACPROD production copy of the NODEDETAILS database go to:
- To access the SLACDEV2 test copy of the NODETATILS database go to:
write_offssitenodes.pl
The script write_offsitenodes.pl creates the configuration file /afs/slac.stanford.edu/package/pinger/pinger2/share/pinger/pinger.xml for the SLAC MA.
We modified NodeIPCheck-new.pl to add a subroutine to use dig to find the IPv6 address of a host and also to validate the hostname and Iv6 address. These were used in script write_offsitenodes.pl.
node.pl
There were no changes.
ping_data_plot.pl
Need to add a colon (: ) to the list of characters allowed by cgi-wrap. This goes in the rules file.
Typical PingER Raw Data
ipv6.google.com 2607:f8b0:4007:802::200e 56 1524939147 10 10 9.632 9.690 9.860 1 2 3 4 5 6 7 8 9 10 9.63 9.63 9.74 9.86 9.66 9.65 9.70 9.67 9.64 9.67
IPv6 Targets
See Validating ICMP ping measurements against TCP nping measurements
...