静的IPネットワークでゲートウェイに接続しようとしています


14

raspberryPiでarch-linux-armを実行しています。
私がいるネットワークは静的IPを使用しています。
gateway IPある192.168.178.5
私のデバイスであるため、IPは192.168.178.201

私はインターネットに接続するために使用します:
ip addr add 192.168.178.201 dev eth0
ip route add default via 192.168.178.5
しかし、後者は
RTNETLINK answeres: Network is unreachable
私に何が欠けていますか?

UPDATE
mtakの答えは最初の問題を修正しましたが、
まだゲートウェイに到達できません。結果を
出そうとするpingdestination host unreachable


リンクはアップしていますか?ip link set eth0 up
パトリック14

1
@パトリックうん。最初の問題は、mtakの回答によってすでに解決されています。
マーク14

回答:


11

IPアドレスを追加するときに、サブネットマスクを追加する必要があります。これでシステムはIPが/ 32であると判断し、IP 192.168.178.5を含まないため、到達できません。

サブネットマスクを使用して新しいIPアドレスを追加するには:

ip addr add 192.168.178.201/24 dev eth0

1
これで、ルートを設定しようとしても文句を言わなくなりました。しかし、私はまだインターネットにアクセスできません。pingゲートウェイ自体の結果destination host unreachable
マーク14

3
ここで同じ問題..あなたはそれを機能させることができましたか?
ブランキート

また、私は仕事にこれを取得することはできません、とマークとbranquitoと同じポイントで午前
Tsangares

6

これは私のために働いた

ip route flush dev eth0
ip route add 10.77.132.0/24 dev eth0
ip route add 0.0.0.0/0 via 10.77.132.1

2

systemdとnetctlがありませんか?これがarchが通常使用するものです。IPを使用してインターネットに接続することに縛られていない場合は、これを/ etc / netctl / ethernetに貼り付けることができます。

Interface=eth0
Connection=ethernet
IP=static
Address=('192.168.178.201/24' '192.168.1.87/24')
#Routes=('192.168.0.0/24 via 192.168.1.2')
Gateway='192.168.178.5'
DNS=('192.168.178.5')

次にnetctl start ethernetを実行します(それが機能する場合、netctlが起動時にイーサネットを自動接続できるようにします)。

以前の問題に基づいて、DNSサーバーの定義を忘れていることが問題であると推測されます(自動化されている場合もありますが、わかりません)

それでもゲートウェイに到達できない場合は、ゲートウェイのIPを再確認してください。DHCPで接続しようとしたことがありますか(dhcpcdのように、またはネットワークがそれをまったくサポートしていないのですか?)、接続がまったくできるようにするためだけですか?


0

試してみる

ip route add 192.168.178.0/24 dev eth0 proto kernel  scope link  src 192.168.122.201

ルートのメインテーブルをフラッシュし、静的IPを設定すると、この問題が発生します。

静的IPを削除し、再度読み取り、ルートテーブルに追加された内容を確認し、このエントリを見つけます。次に、デフォルトルートを追加します。

ip a del 192.168.178.201/24 dev eth0
ip a add 192.168.178.201/24 dev eth0
ip route add default via 192.168.178.5 dev eth0
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.