You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 27 Next »

See INC0164829 (for pinger and INC0176266 for www3)

pinger.slac.stanford.edu and www3.slac.stanford.edu

A quick test to see if the host has full  IPv6 capability is to run traceroute6

453cottrell@www3:~$traceroute6 ipv6.google.com
traceroute to ipv6.google.com (2607:f8b0:4007:802::200e), 30 hops max, 80 byte packets
connect: Network is unreachable
Exit 1


To enable for IPv6:

  • 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 blocks 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 will need an IPv6 address in NetDB
    • It may seem to have an IPv6 address by looking at ifconfig you may see

      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 addr which is currently configure 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. 

      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)

      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:

      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) [?]

pinger2.pl

Modified to enable both the hostname and IPv6 address to be the same.

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

This will use as input:

  • /nfs/slac/g/net/pinger/pingerdata/<dataset>/data/<nodename>/ping-<year>-<mm>-<dd>.txt.gz
  • or more specifically /nfs/slac/g/net/pinger/pingerdata/ipv6/data/2001:da8:270:2018:f816:3eff:fef3:bd3/ping-2017-12-19.txt.gz

Output will go to: 

  • /nfs/slac/g/net/pinger/pingerreports/<dataset>/<metrics>/<metric>-<size>-<by-node>-<yyyy><mm><dd>.txt.gz
  • or more specifically /nfs/slac/g/net/pinger/pingerreports/ipv6/minimum_rtt/minimum_rtt-100-by-node-2017-12-19.txt.gz 

APEX/Oracle user interface to PingER NODEDETAILS database

This does not accept IPv6 Addresses, see INC0176849 and INC0176966

%NODE_DETAILS=(
"2001:da8:270:2018:f816:3eff:fef3:bd3" => [  
"2001:da8:270:2018:f816:3eff:fef3:bd3",   
"gzhu.edu.cn",   
"CN.GZHU.EDU.IPV6",
"CERNET Cloud",  
"Tsinghua University, Beijing",  
"China",
"East Asia",
"23.037002 113.36777",
"M",
"http://[2001:da8:270:2018:f816:3eff:fef3:bd3]/cgi-bin/traceroute.pl?function=ping",
"http://[2001:da8:270:2018:f816:3eff:fef3:bd3]/cgi-bin/traceroute.pl?choice=yes",
"http://[2001:da8:270:2018:f816:3eff:fef3:bd3]/cgi-bin/ping_data.pl",
"http://www.gzhu.edu.cn/",
"",
"",
"",
"Saqib Ali <saqibutm\@outlook.com>, Prof. Guojun Wang, csgjwang\@gzhu.edu.cn; csgjwang\@gmail.com",
"Test record by Venkat based on add by Cottrell 12/19/2017.",
],

 

Nodename (the primary key)

APEX doesn't like colon(:) in primary key column values. Primary key value is passed in the URL as a parameter and APEX parameters are separated by colons (:), which is causing the issue. Venkat provided a workaround. We will test this on the Oracle SLACDEV2 (SLACPROD is the production version) test database.

ipaddress 

Ipaddress is limited to 14 characters and expecting a format of ^[[:digit:]]{1,3}\.[[:digit:]]{1,3}\.[[:digit:]]{1,3}\.[[:digit:]]{1,3}$

If you want to increase the length or change the format, we need to modify the interface code. Proposal is to extend the field to 100 characters (like the other fields) and not apply any filters.

Testing

The connection to the database is  defined in: /afs/slac/package/pinger/oracleArchive/netratDb.pm

In that program the following lines contain slacprod/SLACPROD 

  • ian@rhel6-64e $ grep -i slacprod netratDb.pm
  •  # to all the scripts that store in the SLACPROD database for the user
  •  $ENV{'TWO_TASK'} = 'SLACPROD';
  •      $dbh = DBI->connect('dbi:Oracle:dbname=SLACPROD;host=slacprod;SID=SLACPROD', $usr, $pwd,

I made a copy of the script in /afs/slac/package/pinger/oracleArchive/netratDbdev2.pm and substituted  slacdev2/SLACDEV2 for slacprod/SLACPROD and also made a copy of /afs/slac/package/pinger/guthrie/node.pl  in /afs/slac/package/pinger/guthrie/node-ipv6.pl to call the new script. Then I saved the new file using /afs/slac/package/pinger/guthrie/node-ipv6.pl -o > /afs/slac/package/pinger/nodes-ipv6.cf

The password is kept in a protected file. The password on SLACDEV2 was changed to match the one on SLACPROD

Accessing SLACPROD and SLACDEV2 from the web as follows, they use the same windows userid/passwords

XML file at Guanhzhou

See here. Currently, it contains random pingable IPv6 addresses as I have taken it from http://www.ipv6forum.com/ipv6%5fenabled/approval%5flist.php

SLAC Hosts with IPv6 support

Pinger (Linux), www1 (Solaris), www3 (Linux), nospam2-out (Linux), pinger

Looks like nospam2 is working for me.
this is the ipv6 address for nospam2:
```ksa@nospam2 $ host nospam2-out
nospam2-out.slac.stanford.edu has IPv6 address 2620:114:d000:2598::10
ksa@nospam2 $ ```

```ksa@nospam2 $ host google.com | grep IPv6
google.com has IPv6 address 2607:f8b0:4005:808::200e
ksa@nospam2 $ ping6 2607:f8b0:4005:808::200e
PING 2607:f8b0:4005:808::200e(2607:f8b0:4005:808::200e) 56 data bytes
64 bytes from 2607:f8b0:4005:808::200e: icmp_seq=1 ttl=53 time=2.34 ms
64 bytes from 2607:f8b0:4005:808::200e: icmp_seq=2 ttl=53 time=2.24 ms
64 bytes from 2607:f8b0:4005:808::200e: icmp_seq=3 ttl=53 time=2.27 ms
^C
--- 2607:f8b0:4005:808::200e ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2638ms
rtt min/avg/max/mdev = 2.248/2.290/2.347/0.057 ms
ksa@nospam2 $ 
```

www1 also works: 
435cottrell@www1:~>ping -s -A inet6 -a 2607:f8b0:4005:805::200e 
PING 2607:f8b0:4005:805::200e: 56 data bytes 
64 bytes from 2607:f8b0:4005:805::200e: icmp_seq=0. time=2.58 ms 
64 bytes from 2607:f8b0:4005:805::200e: icmp_seq=1. time=2.37 ms 
64 bytes from 2607:f8b0:4005:805::200e: icmp_seq=2. time=2.46 ms 
^C 
----2607:f8b0:4005:805::200e PING Statistics---- 
3 packets transmitted, 3 packets received, 0% packet loss 
round-trip (ms) min/avg/max/stddev = 2.37/2.47/2.58/0.10 

However ns-ext1, pinger do not work: 
436cottrell@ns-ext1:~$ping6 2607:f8b0:4005:805::200e 
PING 2607:f8b0:4005:805::200e(2607:f8b0:4005:805::200e) 56 data bytes 

--- 2607:f8b0:4005:805::200e ping statistics --- 
12 packets transmitted, 0 received, 100% packet loss, time 10999ms 

Exit 1 
436cottrell@pinger:~$ping6 2607:f8b0:4005:808::200e 
connect: Network is unreachable 
Exit 2 
  • No labels