Some time back I learned from Devon Ryan on the bird app (no link because I have stopped using said app) that BLAST phones home every time you used it, by default. I was never aware of this until I saw the post and I'm not really a fan of having this turned on by default.
There are instructions on how to opt-out, which I have included below:
You may also opt-out of the usage reporting by setting the environment variable BLAST_USAGE_REPORT to false. In bash (under LINUX) this command would be:
export BLAST_USAGE_REPORT=false
Recently, I found out about the strace command while learning about Linux. With it, I can confirm whether setting the environment variable does in fact turn off the phoning home behaviour.
First download and extract the BLAST executables for Linux.
wget -c https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.14.0/ncbi-blast-2.14.0+-x64-linux.tar.gz
tar -xzf ncbi-blast-2.14.0+-x64-linux.tar.gz
cd ncbi-blast-2.14.0+/bin
Now let's use strace
to trace all the network related system calls.
strace -f -e trace=network ./blastp 2>&1 | grep sin_addr
[pid 14539] connect(3, {sa_family=AF_INET, sin_port=htons(443), sin_addr=inet_addr("130.14.29.110")}, 16) = -1 EINPROGRESS (Operation now in progress)
If you look up the IP 130.14.29.110, you'll find that it matches the domain www.ncbi.nlm.nih.gov.
Now let's see whether setting the environment variable stops BLAST from phoning home.
export BLAST_USAGE_REPORT=false
echo ${BLAST_USAGE_REPORT}
# false
strace -f -e trace=network ./blastp 2>&1 | grep sin_addr
# no output
You can add the export statement to your .bashrc file, if you use Bash or to your script that runs BLAST to make sure you don't report back to NCBI.
This work is licensed under a Creative Commons
Attribution 4.0 International License.
In Debian we made the home ping opt-in 🙂
https://sources.debian.org/src/ncbi-blast%2B/2.12.0%2Bds-4/debian/patches/optin_usage_report/
Nice 🙂 They turned it off with the Bioconda version too. More reason to install packaged tools!