changed 6 years ago
Published Linked with GitHub

接続が不安定になっちゃった

通常用セグメント 192.168.1.0/24 と、管理用セグメント 192.168.2.0/24 を持ったネットワーク上にいくつかのサーバがある。client1をこのネットワークに追加し設定したところ、client1とclient2間の通信が不安定になってしまった。192.168.1.0/24 のセグメントで正常に通信が行えるようにし、今後同じ状況にならないように設定を書き換えてほしい。 管理用セグメント (192.168.2.0/24) からは正常にアクセスできるため、こちらからsshすること。

ゴール

192.168.1.0/24 のセグメントで正常に通信が行えるようにする
今後同じ状況にならないように設定を書き換える

現状

client1

# ip addr

192.168.1.2
192.168.2.2

# /etc/network/interfaces

    # The loopback network interface
    auto lo
    iface lo inet loopback

    # The primary network interface
    auto eth0
    iface eth0 inet dhcp

client2

ip addr

192.168.1.2
192.168.2.3

# /etc/network/interfaces

    # The loopback network interface
    auto lo
    iface lo inet loopback

    # The primary network interface
    auto eth0
    iface eth0 inet dhcp
  • 192.168.1.0/24がかぶってる
  • network/interfacesは両方dhcpで取ってきてるだけ

vyos

# run show dhcp server leases


IP address       Hardware address   Lease expiration    Pool    Client Name
----------       ----------------   ----------------     ----                      -----------
192.168.1.2      9c:a3:ba:30:00:e2  2019/09/01 00:25:49  ictsc  client2

  • ルータからはclient2しか見えない

→client1がDHCPでちゃんと取ってきてない?

解決

client1

sudo dhclient -r
sudo dhclient

でIPアドレスを再取得

回答

お疲れ様です。:thonk_spin.ex-large.rotate.parrot:です。
「接続が不安定になっちゃった」の回答を送信させていただきます。

この問題では、client1とclient2でip addrを実行したところ、同じIPアドレスが振られていました。そのため、2つのクライアントでIPアドレスが重複したことが原因だと考えられました。ルータ側ではclient2に対してのみDHCPリースを行っていたため、問題はclient1が他と重複したIPアドレスを持っていること、および再取得が行われていないことにあると考えました。

そのため、client1に対して以下のコマンドを実行し、DHCPサーバからの再取得を行いました。

admin@client1:~$ sudo dhclient -r
admin@client1:~$ sudo dhclient

その結果、以下のようにclient1と2の間で疎通がとれるようになりました。

admin@client1:~$ ping 192.168.1.2
PING 192.168.1.2 (192.168.1.2) 56(84) bytes of data.
64 bytes from 192.168.1.2: icmp_seq=1 ttl=64 time=0.305 ms
64 bytes from 192.168.1.2: icmp_seq=2 ttl=64 time=0.379 ms
64 bytes from 192.168.1.2: icmp_seq=3 ttl=64 time=0.425 ms
64 bytes from 192.168.1.2: icmp_seq=4 ttl=64 time=0.331 ms
^C
--- 192.168.1.2 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3028ms
rtt min/avg/max/mdev = 0.305/0.360/0.425/0.045 ms
admin@client2:~$ ping 192.168.1.3
PING 192.168.1.3 (192.168.1.3) 56(84) bytes of data.
64 bytes from 192.168.1.3: icmp_seq=1 ttl=64 time=0.797 ms
64 bytes from 192.168.1.3: icmp_seq=2 ttl=64 time=0.351 ms
64 bytes from 192.168.1.3: icmp_seq=3 ttl=64 time=0.357 ms
64 bytes from 192.168.1.3: icmp_seq=4 ttl=64 time=0.402 ms
^C
--- 192.168.1.3 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3056ms
rtt min/avg/max/mdev = 0.351/0.476/0.797/0.187 ms

また、この問題の根本原因は、DHCPサーバのauthoritativedisableになっていたことです。このため、問題のあるclient1に対してDHCPNAK を発行し再取得させることができなかったと考えました。そのため、ルータに対して以下の設定を行い、これをenableにしました。

admin@vyos# set service dhcp-server shared-network-name ictsc authoritative enable
admin@vyos# commit
admin@vyos# save

これにより、今後はこの問題が再発しないと思います。
よろしくお願いいたします。

間違ってたとこ

authoritativeをenableしてDHCPNAKを発行しても、ping-checkがfalseだと割当済みのIPアドレスを割り振ってしまうので解決しない。

Select a repo