diff --git a/check_ping_multiaddr.py b/check_ping_multiaddr.py
index 9e57990b597945125459fd618d10152696035878..dee53a7c99319fd2065a23436d4514ac5ed1ca77 100755
--- a/check_ping_multiaddr.py
+++ b/check_ping_multiaddr.py
@@ -9,7 +9,32 @@
 __doc__ = """\
 Check that one or more IP addresses responds to ping.
 
-Both IPv4 and IPv6 can be checked at the same time.
+The intent of this Nagios plugin is to check that a host is alive and
+reachable on all of its addresses, in particular both IPv4 and IPv6
+addresses, which can be tested at the same time.
+
+Addresses can be specified either as numeric IP addresses, or as host
+names that will be resolved at runtime.  By default, only the first
+address the resolver library returns for each host name will be used,
+but the -A/--all flag will cause all of the addresses returned by the
+resolver to be used.  You need to give at least one of --ipv4 or --ipv6,
+but both can be specified at the same time.
+
+Note that Nagios does not allow you to declare multiple addresses for
+a host.  To use this in a check_command for a host, you need to either
+let %prog resolve addresses at runtime (thus depending on
+DNS), or you need to generate a unique command declaration for each
+host; something like:
+
+    define host {
+        host_name       smurf
+        address         198.51.100.23
+        check_command   check-host-alive::smurf
+    }
+    define command {
+        command_name    check-host-alive::smurf
+        command_line    $USER1$/check_ping_multiaddr -A46 -- 198.51.100.23 2001:db8:4711:17::1:23
+    }
 """
 
 __version__ = '<#VERSION#>'
@@ -41,6 +66,7 @@ class Options(optparse.OptionParser):
         optparse.OptionParser.__init__(
             self,
             usage="%prog {-4|-6} [options] -- address ...",
+            formatter=trh_nagioslib.NoReflowHelpFormatter(),
             version=__version__,
             description=__doc__)
         self.add_option(