Skip to content
/ dstp Public

🧪 Run common networking tests against any site.

License

Notifications You must be signed in to change notification settings

ycd/dstp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

120 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dstp

dstp, run common networking tests against your site.

dstp gif


Usage

Usage: dstp [OPTIONS] [ARGS]
Options:
        -a, --addr   <string>  The URL or the IP address to run tests against      [REQUIRED]
        -o, --out    <string>  The type of the output, either json or plaintext    [Default: plaintext] 
        -p           <int>     Number of ping packets                              [Default: 3]
        -t           <int>     Give up on ping after this many seconds             [Default: 2s per ping packet]
        --port       <string>  Port for testing TLS and HTTPS connectivity         [Default: 443]
        --dns        <string>  Custom DNS server to use for DNS resolution         [No default]
        -h, --help             Show this message and exit.

Motivation

A comment on lobste.rs, in a thread about DNS gave a great idea and thought a robust tool like that might come in handy!

Installation

Packages

Homebrew

brew install dstp

Go Install

go install github.com/ycd/dstp/cmd/dstp@latest

NixOS/nix

You can install dstp using one of these methods:

  1. Using nix-shell or nix shell (recommended for trying it out):
nix shell nixpkgs#dstp
  1. Adding to your NixOS configuration (system-wide installation):
# configuration.nix or home-manager configuration
{
  # ...
  environment.systemPackages = with pkgs; [
    dstp
  ];
}
  1. Or using nix profile (for individual user installation):
nix profile install nixpkgs#dstp

Arch Linux

git clone https://aur.archlinux.org/dstp.git
cd dstp
makepkg -sri

Downloads

Binary downloads of example are available from the releases section on GitHub for 64-bit Windows, macOS, and Linux targets. They contain the compiled executable.

platform
macOS ARM 64 Bit
macOS 64 Bit
Linux 32-Bit
Linux ARM 64 Bit
Linux 64 Bit
Windows 64 Bit
Windows 32 Bit
Windows ARM 64 Bit

Installation from source

  1. Verify that you have Go 1.17+ installed (The source code uses ( //go:build ) conditional compilation directives that is introduced in Go 1.17.)

    $ go version
    

    If go is not installed, follow instructions on the Go website.

  2. Clone this repository

    $ git clone https://github.com/ycd/dstp 
    $ cd dstp
    
  3. Build and install

    Unix/Linux

    # May require you to use sudo
    $ go build cmd/dstp/dstp.go
    $ cp dstp /usr/local/bin/dstp
    

    Mac/BSD

    # May require you to use sudo
    $ make
    $ cp dstp /usr/local/bin/dstp
    
  4. Verify installation

    $ dstp -h 
    
    Usage: dstp [OPTIONS] [ARGS]
    Options:
          -a, --addr   <string>  The URL or the IP address to run tests against      [REQUIRED]
          -o, --out    <string>  The type of the output, either json or plaintext    [Default: plaintext]
          -p           <int>     Number of ping packets                              [Default: 3]
          -t           <int>     Give up on ping after this many seconds             [Default: 2s per ping packet]
          --port       <string>  Port for testing TLS and HTTPS connectivity         [Default: 443]
          -h, --help             Show this message and exit.
    

Appendix

The command dstp may collide with docker stopcommand if you are using the docker plugin with oh-my-zsh.

To fix this, you can add the following command at the end of your .zshrc file:

unalias dstp

Contributing

All kinds of Pull Requests and Feature Requests are welcomed!

Licence

dstp's source code is licenced under the MIT License.

About

🧪 Run common networking tests against any site.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 6