Ubuntuを内部ネットワークルーターとして設定する

Ubuntuを内部ネットワークルーターとして設定する

私は内部ネットワークVirtual Boxと4つの仮想マシンを使用しています。すべてのインターフェースを設定し、少しいじってみました。IP 転送そしてIPマスカレードホスト上のルーター

ルーターには2つのイーサネットインターフェース1 つは HostC に接続され、もう 1 つは HostA と HostB に接続されます。

もし私が間違ったことをしたならホストCpingできるホストAとBしかしホストAとBpingできませんホストCルーターの設定になります。

答え1

ここで問題を診断するには、投稿にもう少し情報を追加する必要があります。診断を試みるコマンドがいくつかあり、コメントで読むのは難しいため、わかりやすくするためにこれを回答として追加します。ルーターで次のコマンドを実行し、出力を報告してください。ネットワークのセットアップと構成を理解し、問題を特定するのに役立ちます。

インターフェースを一覧表示します:

ip link show

インターフェース転送状態を一覧表示します:

sysctl -a | grep forwarding

インターフェースアドレスを一覧表示します:

ip addr show
ip -6 addr show

ファイアウォール ルールを一覧表示します。

iptables -L
ip6tables -L

NAT ルールを一覧表示します。

iptables -t nat -L
ip6tables -t nat -L

また、ルータ自体がすべてのホストに到達できることを確認してください。

ping -c4 HostA
ping -c4 HostB
ping -c4 HostC

もちろん、HostA/B/C をホストの IP アドレスに置き換えます。これは重要なステップです。ここで問題が発生した場合、サブネット間のルーティングについて心配する前に、まずその問題を解決する必要があるからです。

答え2

ip link show

結果:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether 08:00:27:90:2d:e5 brd ff:ff:ff:ff:ff:ff 3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether 08:00:27:d4:ac:c1 brd ff:ff:ff:ff:ff:ff

すべて順調そうです。

sysctl -a |grep forwarding

結果:

net.ipv4.conf.all.forwarding = 1 net.ipv4.conf.all.mc_forwarding = 0 net.ipv4.conf.default.forwarding = 1 net.ipv4.conf.default.mc_forwarding = 0 net.ipv4.conf.eth0.forwarding = 1 net.ipv4.conf.eth0.mc_forwarding = 0 net.ipv4.conf.eth1.forwarding = 1 net.ipv4.conf.eth1.mc_forwarding = 0 net.ipv4.conf.eth2.forwarding = 1 net.ipv4.conf.eth2.mc_forwarding = 0 net.ipv4.conf.lo.forwarding = 1 net.ipv4.conf.lo.mc_forwarding = 0 net.ipv6.conf.all.forwarding = 0 net.ipv6.conf.all.mc_forwarding = 0 sysctl: reading key "net.ipv6.conf.all.stable_secret" net.ipv6.conf.default.forwarding = 0 net.ipv6.conf.default.mc_forwarding = 0 sysctl: reading key "net.ipv6.conf.default.stable_secret" net.ipv6.conf.eth0.forwarding = 0 net.ipv6.conf.eth0.mc_forwarding = 0 sysctl: reading key "net.ipv6.conf.eth0.stable_secret" net.ipv6.conf.eth1.forwarding = 0 net.ipv6.conf.eth1.mc_forwarding = 0 sysctl: reading key "net.ipv6.conf.eth1.stable_secret" net.ipv6.conf.eth2.forwarding = 0 net.ipv6.conf.eth2.mc_forwarding = 0 sysctl: reading key "net.ipv6.conf.eth2.stable_secret" net.ipv6.conf.lo.forwarding = 0 net.ipv6.conf.lo.mc_forwarding = 0 sysctl: reading key "net.ipv6.conf.lo.stable_secret"

転送が有効になっています。

ip addr show

IP アドレスは正常です。Cisco Packet Tracer で確認しました。

ip -6 addr show

ipv6が設定されていません。

iptables -L

結果:

`チェーン INPUT (ポリシー ACCEPT) ターゲット prot opt ソース 宛先

チェーン FORWARD (ポリシー ACCEPT) ターゲット prot opt ソース 宛先

チェーン OUTPUT (ポリシー ACCEPT) ターゲット prot opt ソース 宛先`

iptables -S

結果:

-P INPUT ACCEPT -P FORWARD ACCEPT -P OUTPUT ACCEPT

現在はデフォルトです。

Pinging

HostR (ルーター、10.0.0.1、172.16.0.1) は HostA、HostB に ping を送信しますが、HostC には送信できません。

HostA/HostB (10.0.0.5/.6) は HostA/B、HostR に ping しますが、HostC には ping できません。

HostC (172.16.0.2) はすべてに ping を送信します。

ご回答ありがとうございます。これらの結果についてどう思われるか教えてください。現在対処中です。何か進展があれば報告します。

関連情報