web-dev-qa-db-ja.com

(特定の)VPNネットワークに接続するときにIPv6を無効にする

私が働いているほとんどの場所で、IPv6がサポートされています。私の研究では、大学へのVPNアクセスも持っています。ただし、この大学はIPv6をサポートしていないため、IPv4データは接続時にVPN経由でルーティングされますが、IPv6は私のローカルルーター経由でルーティングされます。

ログインせずに、または無料で、IPに基づいて大学に特定のコンテンツを提供するさまざまなWebサイト(例 https://ieeexplore.ieee.org/ )があります。これらのWebサイトはIPv4とIPv6をサポートしており、Ubuntu /私のブラウザーはIPv6を優先しているため、大学のVPNに接続している場合でも、提供されたコンテンツにアクセスできません。これは、IPv6を非アクティブ化した場合にのみ機能します(手動で、たとえばIPv6 IPアドレスをドロップすることにより)。

この特定のVPNに接続するときにNetwork Managerを使用してコンピューターのIPv6を非アクティブ化する方法はありますか? Network ManagerのIPv6設定で[Disable]を選択すると、University接続(IPv6もない)に対してのみIPv6が無効になります。この大学のVPNに接続しているときにIPv6トラフィックをグローバルに無効化/ブロックするにはどうすればよいですか?

Ubuntu 19.04とNetwork Managerを使用しています。

1
Matthias Lohr

ifconfigを使用してVPNインターフェースを確認してください。インターフェース名を示します。

/etc/network/if-up.dにスクリプトを作成します。

#!/bin/sh

if [ "$IFACE" = "tun0" ]; then
  sysctl -w net.ipv6.conf.all.disable_ipv6=1
  sysctl -w net.ipv6.conf.default.disable_ipv6=1
fi

タップまたは別のVPNインターフェイスを使用している場合は、行を置き換えます

if [ "$IFACE" = "tun0" ]; then

if [ "$IFACE" = "tap0" ]; then

または

if [ "$IFACE" = "your_denoted_vpn_interface_name" ]; then

1
kukulo