Man page - pyfunceble(1)
Packages contains this manual
apt-get install python3-pyfunceble
Manual
PyFunceble
NAMESYNOPSIS
DESCRIPTION
USAGE
OPTIONS
EXAMPLES
SEE ALSO
REPORTING BUGS
AUTHORS
NAME
pyfunceble - The tool to check the availability or syntax of domain, IP or URL
SYNOPSIS
pyfunceble [options] [DOMAINS [DOMAINS ...]]
DESCRIPTION
tool written in
Python that was developed with the objective of verifying
the availability of domains and IP addresses on the
Internet. The main
purpose of PyFunceble is to perform DNS resolution and
connection tests
to determine if a domain is up and reachable or down and
unavailable.
USAGE
Usage overview
and basic syntax of helper executablesincluded in the
PyFunceble
package:
pyfunceble:
[--show-completion {bash,zsh,tcsh}]
[-d DOMAINS [DOMAINS ...]]
[-u URLS [URLS ...]] [-f FILES [FILES ...]]
[-uf URL_FILES [URL_FILES ...]] [--adblock]
[--cidr] [--complements] [--preload]
[--filter CLI_TESTING__FILE_FILTER] [--mining]
[--rpz] [--wildcard] [--chancy] [-c]
[--cooldown-time CLI_TESTING__COOLDOWN_TIME]
[--local]
[--collection-preferred-origin
{frequent,latest,recommended}]
[--collection-lookup]
[--collection-lookup-only] [--dns-lookup]
[--dns-lookup-only] [--http] [--http-only]
[--netinfo-lookup] [--netinfo-lookup-only]
[--special-lookup] [--special-lookup-only]
[--whois-lookup] [--whois-lookup-only]
[--reputation-lookup]
[--reputation-lookup-only] [--reputation]
[--syntax] [-t LOOKUP__TIMEOUT]
[--max-http-retries MAX_HTTP_RETRIES]
[-ua USER_AGENT__CUSTOM] [-vsc]
[--dns DNS__SERVER [DNS__SERVER ...]]
[--dns-protocol {UDP,TCP,HTTPS,TLS}]
[--follow-server-order] [--trust-dns-server]
[--dns-delay DNS__DELAY]
[--http-proxy PROXY__GLOBAL__HTTP]
[--https-proxy PROXY__GLOBAL__HTTPS]
[--inactive-db]
[--database-type {csv,mariadb,mysql,postgresql}]
[-dbr CLI_TESTING__DAYS_BETWEEN__DB_RETEST]
[-wdb] [-a] [-ex] [--colour]
[--display-status
{all,ACTIVE,INACTIVE,VALID,INVALID,MALICIOUS,SANE}
[{all,ACTIVE,INACTIVE,VALID,INVALID,MALICIOUS,SANE} ...]]
[--dots] [--hierarchical] [-h]
[-ip CLI_TESTING__HOSTS_IP] [--merge-output]
[--no-files]
[--output-location OUTPUT_LOCATION]
[--unified-results] [--percentage]
[--registrar]
[--max-registrar CLI_TESTING__DISPLAY_MODE__MAX_REGISTRAR]
[--plain] [-q] [--push-collection] [-s]
[-w CLI_TESTING__MAX_WORKERS]
[--ci-max-minutes CLI_TESTING__CI__MAX_EXEC_MINUTES]
[--ci] [--ci-branch CLI_TESTING__CI__BRANCH]
[--ci-distribution-branch
CLI_TESTING__CI__DISTRIBUTION_BRANCH]
[--ci-command CLI_TESTING__CI__COMMAND]
[--ci-end-command CLI_TESTING__CI__END_COMMAND]
[--ci-commit-message CLI_TESTING__CI__COMMIT_MESSAGE]
[--ci-end-commit-message
CLI_TESTING__CI__END_COMMIT_MESSAGE]
[--help] [-v]
Note:
All arguments listed below acts a switch to your
configuration file-s.
This means that if (e.g.)
âfile_generation.no_fileâ is set to
âtrueâ its
value will be switch to âfalseâ at the runtime
if the â--no-filesâ argument
is being used. Meaning that output files will be
generated.
OPTIONS
--show-completion {bash,zsh,tcsh} Show Shell completion script and exit.
--help Show this help message and exit.
-v , --version Show the version of PyFunceble and exit.
Test sources:
-d
DOMAINS[DOMAINS ...],
--domain
DOMAINS [DOMAINS ...]
Test one or more domains, separated by spaces.
qWhen this option is used, no output files are
generated.
-u
URLS
[URLS ...],
--url
URLS [URLS ...]
Test one or more full URL, separated by spaces.
-f
FILES
[FILES ...],
--file
FILES [FILES ...]
Read a local or remote (RAW link) file and test all domains
inside it. If remote (RAW link) file is given, PyFunceble
will download it,and test the content of the given RAW link
as if it was a locally stored file.
-uf URL_F ILES [URL_FILES ...], --url-file URL_FILES [URL_FILES ...]
Read a local or
remote (RAW link) file and test all (full) URLs inside it.
If remote (RAW link) file is given, PyFunceble will download
it, and test
the content of the given RAW link as if it was a locally
stored file.
This argument test if an URL is available. It ONLY test full
URLs.
Source filtering, decoding, conversion and expansion:
--adblock
Activates or deactivates the decoding of the adblock format.
Configured value: False
--cidr Activates or disables the expansion of CIDR formatted
addresses.
Configured value: False
--complements Activates or disables the generation and test
of the
complements.
A complement is for example âexample.orgâ if
âwww.example.orgâ
is given and vice-versa.
Configured value: False
--preload Activates or disables the preloading of the input
file(s) into the continue dataset before starting the
tests.
This reduces the
waiting time while continuing a previous
session.
Note: This is useless when the auto continue subsystem is
not active.
Configured value: False
--filter CLI_TESTING__FILE_FILTER
Regex to match in order to test a given line.
Configured value: None
--mining Activates or disables the mining subsystem.
Configured value: False
--rpz Activates or disables the decoding of RPZ policies
from each given input files.
Configured value: False
--wildcard Activates or disables the decoding of wildcards
for
each given input files.
Configured value: False
Test control:
--chancy
,
--ludicrous
Activates a chancy mode that unleashes the safety
workflow in place.
WARNING: You shouldnât have to use this unless you
feel really
lucky and trust your machine. This mode makes things look
âfastâ, but
it may produce some unexpected results if N process
simultaneouslywrite
the same output file.This mode makes the graphical CLI
outputunparsable
- either.
MAY THE FORCE BE WITH YOU!
Configured
value:False
-c, --auto-continue, --continue
activates or disables the autocontinue subsystem.
Configured
value: False
--cooldown-time CLI_TESTING__COOLDOWN_TIME
Sets the cooldown time (in second) to apply between each
test.
Configured
value:0.0]
--local Activates or disables the consideration of the
test(s)
in or for a local or private network context.
Configured
value:False
--collection-preferred-origin {frequent,latest,recommended}
Sets the preferred status origin.
Configured
value:ârecommendedâ
--collection-lookup Activates or disables the usage of the
Collection lookup
whether possible.
Configured
value:False
--collection-lookup-only
Only perform a Collection lookup.
--dns-lookup Activates or disables the usage of the DNS
lookup
whether possible.
Configured
value:True
--dns-lookup-only Only perform a DNS lookup.
--http, --http-status-code-lookup
Switch the value of the usage of HTTP code.
Configured
value: True
--http-only, --http-status-code-lookup-only
Only perform a HTTP Code lookup.
--netinfo-lookup Activates or disables the usage of the
network
information (or network socket) whether possible.
Configured
value: True
--netinfo-lookup-only
Only perform a network information (or networket socket)
lookup.
--special-lookup Activates or disables the usage of our
SPECIAL and
extra rules whether possible.
Configured
value: True
--special-lookup-only
Only perform a SPECIAL lookup.
--whois-lookup Activates or disables the usage of the WHOIS
record
(or better said the expiration date in it) whether
possible.
Configured
value: True
--whois-lookup-only Only perform a WHOIS lookup.
--reputation-lookup Activates or disables the usage of the
reputation
dataset whether possible.
Configured
value: False
--reputation-lookup-only
Only perform a reputation lookup.
--reputation Activates or disables the reputation
checker.
Configured
value: False
--syntax Activates or disables the syntax
checker.
Configured
value: False
-t LOOKUP__TIMEOUT, --timeout LOOKUP__TIMEOUT
Sets the default timeout to apply to each lookup
utilities every time it is possible to define a
timeout.
Configured
value: 5
--max-http-retries MAX_HTTP_RETRIES
Sets the maximum number of retries for an HTTP
request.
Configured
value: 3
-ua USER_AGENT__CUSTOM, --user-agent USER_AGENT__CUSTOM
Sets the user agent to use.
If not given, we try to get the latest (automatically) for
you.
-vsc,
--verify-ssl-certificate
Activates or disables the verification of the SSL/TLS
certificate when testing for URL.
Configured value: False
DNS control:
--dns
DNS__SERVER [DNS__SERVER ...]
Sets one or more (space separated) DNS server(s) to use
during testing.
To
specify a port number for the DNS server you append it
as :port [ip:port].
If no port is specified, the default DNS port (53) is used.
Configured
value: None
--dns-protocol
{UDP,TCP,HTTPS,TLS}
Sets the protocol to use for the DNS queries.
Configured value: âUDPâ
--follow-server-order
Let us follow or mix the order of usage of the given
or found DNS server(s).
Configured value: True
--trust-dns-server
Activates or disable the trust mode.
When active, when the first read DNS server give us a
negative
response - without error - we take it as it it.
Otherwise, if not active, when the first read DNS server
give us
a negative response - without error - we still consolidate
by
checking all given/found server.
Configured
value: False
--dns-delay
DNS__DELAY
Sets the delay (in seconds) to apply between each DNS
queries.
Configured value: 0.0
Proxy
control
:
--http-proxy
PROXY__GLOBAL__HTTP
Sets the proxy to use when testing subjects over HTTP.
Configured value: None
--https-proxy
PROXY__GLOBAL__HTTPS
Sets the proxy to use when testing subjects over HTTPS.
Configured value: None
Databases:
--inactive-db
Activates or disables the usage of a
âdatabaseâ to
store all âINACTIVEâ and âINVALIDâ
subject for continuous retest.
Configured value: True
--database-type
{csv,mariadb,mysql,postgresql}
Sets the database engine to use.
You can choose between the following: âcsv | mariadb |
mysql | postgresqlâ
Configured value: âcsvâ
-dbr
CLI_TESTING_DAYS_BETWEEN__DB_RETEST,
--days-between-db-retest
CLI_TESTING__DAYS_BETWEEN__DB_RETEST
Sets the numbers of days since the introduction of
subject into the inactive dataset before it gets retested.
Configured value: 1
-wdb
,
--whois-database
Activates or disables the usage of a âdatabaseâ
to
store the expiration date of all domains with a valid
expiration date.
Configured value: True
Output control:
-a
,
--all
Activates or disables the display of the
all
information in the table we print to stdout.
Configured value: False
-ex
,
--execution
Activates or disables the display of the execution time.
Configured value: False
--colour
,
--color
Activates or disables the coloration to STDOUT.
Configured value: True
--display-status
{all,ACTIVE,INACTIVE,VALID,INVALID,MALICIOUS,SANE}
[{all,ACTIVE,INACTIVE,VALID,INVALID,MALICIOUS,SANE} ...]
Sets the status that we are allowed to print to
STDOUT.
Multiple
space separated statuses can be given.
Configured value: âallâ
--dots
Activate or disables the display of dots or other
characters when we skip the test of a subject.
Configured value: False
--hierarchical
Activates or disables the sorting of the files
content (output) in a hierarchical order.
Configured value: False
-h
,
--host
Activates or disables the generation of the
hosts file(s).
Configured value: False
-ip
CLI_TESTING__HOSTS_IP,
--hosts-ip
CLI_TESTING__HOSTS_IP
Sets the IP to prefix each lines of the hosts file.
Configured value: â0.0.0.0â
--merge-output
Activates or disables the merging of the
outputs of all
inputted files inside a single subdirectory as opposed to
the
normal behavior.
Configured value: False
--no-files
Activates or disables the generation of any
non-logs
file(s).
Configured value: False
--output-location
OUTPUT_LOCATION
Sets the location where we are supposed to generation
the output directory from.
Configured value:
--unified-results
Activates or disables the generation
of the unified
results file instead of the divided ones.
Configured value: False
--percentage
Activates or disables the display and
generation
of the percentage - file - of each status.
Configured value: True
--registrar
Activates or disables the display and
generation
of the registrar - file - status at the end of a test.
The registrar file contains the top domain registrar found
while testing.
Configured value: False
--max-registrar
CLI_TESTING__DISPLAY_MODE__MAX_REGISTRAR
Sets the maximal number of registrar to display.
Note: This argument has no effect when the
--registrar
argument is not set. This argument only takes effect on
display but not in the log file
Configured value: 15
--plain
Activates or disables the generation of the
RAW
file
(s). What is meant is a list with only a list
of
subject (one per line).
Configured value: True
-q
,
--quiet
Activates or disables the display of
output to the
terminal.
Configured value: False
--push-collection
Activates or disables the push of test
result into the
collection API.
Configured value: False
-s
,
--simple
Activates or disables the simple
output mode.
Configured value: False
Configured value: True
Multiprocessing:
-w
CLI_TESTING__MAX_WORKERS,
--max-workers
CLI_TESTING__MAX_WORKERS
Sets the number of maximal workers to use.
If not given, 20 (based on the current machine) will be
applied.
Configured value: None
CI
/ CD:
--ci-max-minutes
CLI_TESTING__CI__MAX_EXEC_MINUTES
Sets the number of minutes to wait before starting
to stop a CI session.
Configured value: 15
--ci
Activates or disables the Continuous Integration
mechanism.
Configured value: False
--ci-branch
CLI_TESTING__CI__BRANCH
Sets our git working branch. This is the branch
from where we are supposed to store the tests
(excepts the final results).
Configured value: âmasterâ
--ci-distribution-branch
CLI_TESTING__CI__DISTRIBUTION_BRANCH
Sets our git distributions branch. This is the
branch from where we are supposed to store and push
the final results.
Configured value: âmasterâ
--ci-command
CLI_TESTING__CI__COMMAND
Sets the command to execute before each commit
(except the final one).
Configured value: None
--ci-end-command
CLI_TESTING__CI__END_COMMAND
Sets the command to execute before the final commit.
Configured value: None
--ci-commit-message
CLI_TESTING__CI__COMMIT_MESSAGE
Sets the commit message to apply every time we have
to apply a commit except for the really last one.
Configured value: âPyFunceble - AutoSaveâ
--ci-end-commit-message
CLI_TESTING__CI__END_COMMIT_MESSAGE
Sets the commit message to apply at the really end.
Configured value: âPyFunceble -
Resultsâ
EXAMPLES
Check
the availability of âexample.comâ.
$ pyfunceble
-d
example.com
Check
the availability of âexample.comâ with a simple
(stdout) output.
$ pyfunceble
-s -d
example.com
Check
the availability of âexample.comâ with extended
(stdout) output.
$ pyfunceble
-a -d
example.com
Check
the availability of âexample.comâ and
âexample.orgâ.
$ pyfunceble
-d
example.com example.org
Check
the availability of âhttps://example.comâ.
$ pyfunceble
-u
https://example.com
Check
the availability of âhttps://example.comâ and
âhttps://example.orgâ.
$ pyfunceble
-u
https://example.com
https://example.com
Check
the syntax of âexample.comâ.
$ pyfunceble
--syntax -d
example.com
Check
the reputation of âexample.comâ.
$ pyfunceble
--reputation -d
example.com
Check
the availability of all subjects in the
âmyhostsâ file.
$ pyfunceble
-f
myhosts
Check
the availability of all subjects in the
âmyhostsâ and âyourhostsâ files.
$ pyfunceble
-f
myhosts yourhosts
SEE ALSO
For
an in-depth usage, explanation and examples of the
arguments,you should read
the documentation at
https://pyfunceble.readthedocs.io/en/latest/
REPORTING BUGS
To
report a bug please visit cplay-ng issues tracking system
at:
https://github.com/funilrys/PyFunceble/issues
AUTHORS
Written
by Nissar Chababy (@funilrys) with the help of
https://pyfunceble.github.io/#/contributors
&&
https://pyfunceble.github.io/#/special-thanks
This
manual page was written by Josenison F. da
Silva<nilsonfsilva@hotmail.com>
for the Debian project (but may be used by
others).