.\" netsniff-ng - the packet sniffing beast .\" Copyright 2013 Daniel Borkmann. .\" Subject to the GPL, version 2. .PP .TH ASTRACEROUTE 8 "03 March 2013" "Linux" "netsniff-ng toolkit" .SH NAME astraceroute \- autonomous system trace route utility .PP .SH SYNOPSIS .PP \fB astraceroute\fR [\fIoptions\fR] .PP .SH DESCRIPTION astraceroute is a small utility to retrieve path information in a traceroute like way, but with additional geographical location information. It tracks the route of a packet from the local host to the remote host by sucessively increasing the IP's TTL field in the hope, that the intermediate node sends a ICMP TIME_EXCEEDED notification back to us. .PP astraceroute supports IPv4 and IPv6 queries and will display country and city information, if available, as well as the AS number the hop belongs to and its ISP name. astraceroute also displays timing information and reverse DNS data. .PP Due to astraceroute's configurability it is also possible to gather some more useful information about the hop regarding what it does and doesn't pass through. I.e. astraceroute also allows some clear text strings for probing DPIs or ``great firewalls'' that would filter out blacklisted critical keywords. This tool might be a good start for further in-depth analysis of such systems. .PP .SH OPTIONS .PP .SS -H , --host Hostname or IPv4 or IPv6 address of the remote host where the AS route should be traced to. In case of an IPv6 address or host, option ``\-6'' must be used. IPv4 is the default. .PP .SS -p , --port TCP port for the remote host to use. If not specified, the default port to be used is 80. .PP .SS -i , -d , --dev Networking device to start the trace route from, e.g. eth0, wlan0. .PP .SS -f , --init-ttl Initial TTL value to be used. This option might be useful if you are not interested in the first n hops, but only follow-up ones. The default initial TTL value is 1. .PP .SS -m , --max-ttl Maximum TTL value to be used. If not otherwise specified, the maximum TTL value is 30. Thus, after this has been reached astraceroute exits. .PP .SS -q , --num-probes Specifies the number of queries to be done on a particular hop. The default is 2 query requests. .PP .SS -x , --timeout Tells astraceroute the probe response timeout in seconds, in other words the maximum time astraceroute must wait for an ICMP response from the current hop. The default is 3 seconds. .PP .SS -X , --payload Places an ASCII cleartext into the packet payload. Cleartext that contains whitespaces must be put into quotes (e.g., "censer me"). .PP .SS -l , --totlen Specifies the total length of the packet. Payload that does not have a cleartext string in it is padded with random garbage. .PP .SS -4, --ipv4 Use IPv4 only requests. This is the default. .PP .SS -6, --ipv6 Use IPv6 only requests. This must be used when passing an IPv6 host as an argument. .PP .SS -n, --numeric Tells astraceroute to not perform reverse DNS lookup for hop replies. The reverse option is ``\-N''. .PP .SS -u, --update The built-in geo-database update mechanism will be invoked to get Maxmind's latest version. To configure search locations for databases, the file /etc/netsniff-ng/geoip.conf contains possible addresses. Thus, to save bandwidth or for mirroring Maxmind's databases (to bypass their traffic limit policy), different hosts or IP addresses can be placed into geoip.conf, separated by a newline. .PP .SS -L, --latitude Also show latitude and longtitude of hops. .PP .SS -N, --dns Tells astraceroute to perform reverse DNS lookup for hop replies. The reverse option is ``\-n''. .PP .SS -S, --syn Use TCP's SYN flag for the request. .PP .SS -A, --ack Use TCP's ACK flag for the request. .PP .SS -F, --fin Use TCP's FIN flag for the request. .PP .SS -P, --psh Use TCP's PSH flag for the request. .PP .SS -U, --urg Use TCP's URG flag for the request. .PP .SS -R, --rst Use TCP's RST flag for the request. .PP .SS -E, --ecn-syn Use TCP's ECN flag for the request. .PP .SS -t , --tos Explicitly specify IP's TOS. .PP .SS -G, --nofrag Set IP's no fragmentation flag. .PP .SS -Z, --show-packet Show and dissect the returned packet. .PP .SS -v, --version Show version information and exit. .PP .SS -h, --help Show user help and exit. .PP .SH USAGE EXAMPLE .PP .SS astraceroute -i eth0 -N -S -H netsniff-ng.org This sends out a TCP SYN probe via the ``eth0'' networking device to the remote IPv4 host netsniff-ng.org. This request is most likely to pass. Also, tell astraceroute to perform reverse DNS lookups for each hop. .PP .SS astraceroute -6 -i eth0 -S -E -N -H www.6bone.net In this example, a TCP SYN/ECN probe for the IPv6 host www.6bone.net is being performed. Also in this case, the ``eth0'' device is being used as well as a reverse DNS lookup for each hop. .PP .SS astraceroute -i eth0 -N -F -H netsniff-ng.org Here, we send out a TCP FIN probe to the remote host netsniff-ng.org. Again, on each hop a reverse DNS lookup is being done and the queries are transmitted from ``eth0''. IPv4 is used. .PP .SS astraceroute -i eth0 -N -FPU -H netsniff-ng.org As in most other examples, we perform a trace route to IPv4 host netsniff-ng.org and do a TCP Xmas probe this time. .PP .SS astraceroute -i eth0 -N -H netsniff-ng.org -X "censor-me" -Z In this example, we have a Null probe to the remote host netsniff-ng.org, port 80 (default) and this time, we append the cleartext string "censor-me" into the packet payload to test if a firewall/DPI will let this string pass. Such a trace could be done once without and once with a blacklisted string to gather possible information about censorhsip. .PP .SH NOTE If a TCP-based probe will fail after a number of retries, astraceroute will automatically fall back to ICMP-based probes to pass through firewalls resp. routers. .PP To gather more information about astraceroute's displayed AS numbers, see e.g., http://bgp.he.net/AS. .PP .SH BUGS The geographical locations are estimated with the help of Maxmind's GeoIP database and can or cannot deviate from the actual real physical location. What one can do to decrease a possible error rate is to update the database regularly e.g. with astraceroute's \-\-update option. .PP At some point in time, we need a similar approach to gather more reliable path information such as in paris-traceroute. .PP Due to the generic nature of astraceroute, it currently has a built-in mechanism to stop the trace after a static number of hops, since the configurable TCP flags can have anything included. It is possible to decrease this number of course. In the future, if a SYN probe is sent out, there should be a listener thus we can stop the trace if we detect a handshake in progress. .PP .SH LEGAL astraceroute is licensed under the GNU GPL version 2.0. .PP .SH HISTORY .B astraceroute was originally written for the netsniff-ng toolkit by Daniel Borkmann. It is currently maintained by Tobias Klauser and Daniel Borkmann . .PP .SH SEE ALSO .BR netsniff-ng (8), .BR trafgen (8), .BR mausezahn (8), .BR ifpps (8), .BR bpfc (8), .BR flowtop (8), .BR curvetun (8) .PP .SH AUTHOR Manpage was written by Daniel Borkmann. m_kms_helper] drm_fb_helper_set_par+0x2d/0x60 [drm_kms_helper] intel_fbdev_set_par+0x18/0x70 [i915] fb_set_var+0x236/0x460 fbcon_blank+0x30f/0x350 do_unblank_screen+0xd2/0x1a0 vt_ioctl+0x507/0x12a0 tty_ioctl+0x355/0xc30 do_vfs_ioctl+0xa3/0x5e0 SyS_ioctl+0x79/0x90 entry_SYSCALL_64_fastpath+0x13/0x94 - i915 unpin_work workqueue: intel_unpin_work_fn+0x58/0x140 [i915] process_one_work+0x1f1/0x480 worker_thread+0x48/0x4d0 kthread+0x101/0x140 and this patch purely papers over the issue by adding a NULL pointer check and a WARN_ON_ONCE() to avoid the oops that would then generally make the machine unresponsive. Other callers of i915_gem_object_to_ggtt() seem to also check for the returned pointer being NULL and warn about it, so this clearly has happened before in other places. [ Reported it originally to the i915 developers on Jan 8, applying the ugly workaround on my own now after triggering the problem for the second time with no feedback. This is likely to be the same bug reported as https://bugs.freedesktop.org/show_bug.cgi?id=98829 https://bugs.freedesktop.org/show_bug.cgi?id=99134 which has a patch for the underlying problem, but it hasn't gotten to me, so I'm applying the workaround. ] Cc: Daniel Vetter <daniel.vetter@intel.com> Cc: Jani Nikula <jani.nikula@linux.intel.com> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Cc: Imre Deak <imre.deak@intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/kvm/arm_pmu.h')