最近、VPNプロバイダにサインアップしてログインしましたが、通常のワイヤレス接続にネットワーク管理者を使用した後、ネットワーク管理者がopenvpn接続を開始しました。ブラウザでIP Locationサイトにアクセスしてトンネルを使用していることを確認できますが、Torrentクライアントが実際にこの接続を使用しているかどうかを確認できますか?たとえば、私のVPNプロバイダはしばらくしてから(意図的でも偶発的でも)私をログアウトしてから、私の急流クライアントはまだ利用可能な通常のWi-Fi接続を使用して起動しますか?
答え1
私の急流クライアントが実際にこの接続を使用していることをどうやって確認できますか?
ホームページがありますが、私のTorrentIPをチェックしてください、まさにそうです。デフォルトでは、自分用に生成された急流ファイルをダウンロードしてクライアントでそのファイルを開くと、使用中のIPアドレスが報告されます。 IPはクライアントに直接表示されますが、IPが表示されているサイトに再びアクセスすることもできます。より多くの情報を得るためのウェブサイトによくある質問があります。
VPNプロバイダがしばらくしてから(意図的または誤って)ログアウトしてから、急流クライアントはまだ利用可能な通常のWi-Fi接続の使用を開始できますか?
完全に。よくある質問私のTorrentIPをチェックしてくださいまたこの記事はTorrentFreakからのものです。これが発生しないようにするためのいくつかのオプションを説明してください。特定のファイアウォールルールの使用、TCP/IP ルーティングの変更、または使用特定 アプリケーション。
もし使用するなら瀬特定のIPアドレス(VPNが提供するアドレス)にバインドすることができ、そのインターフェイスへの接続が失われると、rtorrentはダウンロード/シーディングを停止します(正直なところ、これについて100%正確ではありません。少なくとも見てみるべき興味深いもの)。 VPN IPが0.0.0.0の場合は、次のエントリに追加してください.rtorrent.rc
。
bind = 0.0.0.0
答え2
コマンドを実行してくださいsudo ifconfig
。tun0
VPNトンネルに似た接続のリストを返す必要があります。tun0
ブロック内inet addr xxx.xxx.xxx.xxx
。
それをインポートしてinet addr
追加するか、次のように.rtorrent.rc
ファイル(おそらくディレクトリにあります)を編集します。/home
bind = xxx.xxx.xxx.xxx
(明らかに数字を代わりに入力しますxxx.xxx.xxx.xxx
)。
接続するたびにこれを行うのは面倒ですが、VPNがタイムアウトし、急流の実行中に物理IPに追い出される場合は、実際のIPを公開することは大きな問題です。
私は起動するたびにこれを自動的に実行するスクリプトを書いています。うまくいったらまた来て投稿してみます。
ここで約束したとおり、これを行うスクリプトがあります。起動時にVPNを起動しない限り、起動時にVPNを実行するのは非現実的であるため、手動でrootとして実行するか、VPNを起動してrtorrentを起動する前に、.rtorrent.rcを含むディレクトリでsudoを使用する必要があります。
ルートアクセスが必要なコンテンツを投稿して申し訳ありません。安全であることを確認しない限り、ルートアクセスが必要なフォーラムで何も実行しないでください。
スクリプトはifconfig出力を解析し、「tun」文字列に関連付けられているIPアドレスを見つけて、.rtorrent.rcファイルの最後の行にバインドステートメントとして書き込みます。
同時に、最初に既存の.rtorrent.rcファイルの最大10個のバックアップを保存する.svrtvpnというディレクトリを作成し、次に.rtorrent.rcファイルから他のすべてのバインドステートメントを削除してから、検出されたVPN IPを記録します。 .rtorrent.rc ファイルの最後の行にバインドするアドレス
私は非常に怠惰なので、VPNを実行するたびに手動でバインディングを検出して作成するためにさらに10秒を費やすよりも、スクリプトの作成と迅速な呼び出しに時間を費やす方がはるかに簡単です。 #!/bin/bash
#svrtvpn.sh ver 0.3 "shadowvision rtorrent vpn" 01-05-2016 @ shadowvision.com/org
#a simple script to set your .rtorrent.rc bind to the ip address your vpn is using so that if your vpn gets disconnected, rtorrent will stop and you wont be unmasked
#WARNING WARNING WARNING WARNING under some circumstances it erases parts or even the entire .rtorrent file, but it makes a backup first so namaste :)
#this seems to happen if there arent any bind addresses to start with so the script will append a bogus one before it does anything else.
#syntax before starting rtorrent, run as root from the directory where your .rtorrent.rc is, follow the prompt and enter your linux user name that you will be running rtorrent as.
#provide help
if [ "$1" = "help" ]; then
echo " use: before starting rtorrent, run as root from the directory where your .rtorrent.rc is."
echo " script is dependent on ifconfig returning the vpn connection as 'tun'. if that isnt what your connection is called you will have to manually change it inside the script"
echo " svrtvpn.sh saves your existing .rtorrent.rc file in a directory called .svrtvpn with the extension of the epoch time in seconds. the last ten backups are saved."
echo " if you use this script, the bind = address will always be the last line of your .rtorrent.rc file"
echo " svrtvpn.sh ver 0.3 "shadowvision rtorrent vpn" 01-05-2016 @ shadowvision.com/org"
echo " a simple script to set your .rtorrent.rc bind to the ip address your vpn is using so that if your vpn gets disconnected, rtorrent will stop and you wont be unmasked"
echo " shadowvision makes no claims as to the usability of this script on your system, it was tested on kali linux with network manager and PIA 'private internet access'"
exit
fi
#first check to see if you have a .rtorrent.rc file. if you dont it tells you so and exits.
RTORRENTFILE=./.rtorrent.rc
if [ ! -f "$RTORRENTFILE" ]; then
echo "You dont have .rtorrent.rc in this directory, script will now exit!"
exit
fi
# set your backup directory variable
SVDIR=.svrtvpn
#tell the user its using a backup directory
if [ -d "$SVDIR" ]; then
echo "using existing $SVDIR directory for backups. your your last ten backups will be saved here."
#now make your .svrtvpn directory where your backups are stored if it doesnt already exist
else
mkdir -p $SVDIR
echo "created a directory called $SVDIR, your last ten .rtorrent.rc backups are stored here."
fi
#first find out what user you are running as, the script sets the ownership of .rtorrent.rc to this user at the end
SVUSER=$(ls -ld .rtorrent.rc | awk '{print $3}')
echo "your .rtorrent.rc file is owned by $SVUSER , it should remain read/write by that user and read for everyone else at the end of this script."
#copy your .rtorrent.rc to a backup file with the seconds of epoch time as the extension.
cp .rtorrent.rc ./$SVDIR/.rtorrent.rc.$(date +"%s")
#append a bogus ip bind so that the script wont erase your entire file
echo "bind = 999.999.999.999" >> .rtorrent.rc
#find out what your current vpn ip is, and if you dont have one, exit. as long as you didnt previously have a valid ip entered rtorrent wont start.
if $( ifconfig |grep -q -A1 tun); then
VPNIP=$(ifconfig |grep -A1 tun |grep inet | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | head -1)
#find any bind addresses in the file so we can delete them
DELINE=$(cat .rtorrent.rc |grep bind | grep '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | grep -v \# |grep -v \:)
#delete old bind addresses by tediously copying everything but found addresses to a temp file then back to the original file.
cat .rtorrent.rc |grep -v "$DELINE" > ./$SVDIR/.rtorrent.xx
cat ./$SVDIR/.rtorrent.xx > .rtorrent.rc
#add the vpn ip to the end of your file
echo "bind =" "$VPNIP" >> .rtorrent.rc
#make sure ownerships and read perms are sane
chown $SVUSER .rtorrent.rc
chmod u+rw .rtorrent.rc
chmod a+r .rtorrent.rc
chown -R $SVUSER $SVDIR
chmod -R a+r $SVDIR
#only save last ten backups, note the number is set to 13 because the three files . .. and .xx file arent backups
cd $SVDIR
ls -tra | head -n -13 | xargs --no-run-if-empty rm
cd -
else
#if you got to here it didnt work so set a bogus bind address so rtorrent wont start
VPNIP=999.999.999.999
#just like above find any old bind addresses so we can remove them
DELINE=$(cat .rtorrent.rc |grep bind | grep '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' | grep -v \# |grep -v \:)
cat .rtorrent.rc |grep -v "$DELINE" > ./$SVDIR/.rtorrent.xx
cat ./$SVDIR/.rtorrent.xx > .rtorrent.rc
#set the bogus address
echo "bind =" "$VPNIP" >> .rtorrent.rc
#reset sane perms
chown $SVUSER .rtorrent.rc
chmod u+rw .rtorrent.rc
chmod a+r .rtorrent.rc
chown -R $SVUSER $SVDIR
chmod -R a+r $SVDIR
#tell us what happened
echo "you are not connected to a vpn, this wont work"
echo "your bind address has been set to 999.999.999.999"
fi