5回のArch Linuxのインストールに失敗した後、2回正しくインストールしました。初めてネットワークが正常に動作し、SSH経由でArch Linuxをインストールした。
Live CDの代わりにインストールされたシステムから起動した後、ネットワークに接続できず、何でも(ルーターを含む)pingを試みると、次のメッセージが表示されます。
接続:ネットワークにアクセスできません。
インターネットのどんな方法でも問題が解決しないようで、Archを再インストールしてみました。インストール後、同じ問題に直面しました。
タイムアウトしたため、eth0を起動できないようです。
答え1
私が直面している問題はeth0
(私が知っている限り)何もないということです。コマンドを実行するip link
とインタフェースが出力されます。このインターフェースはありませんeth0
。逆に私はenp1s8
。
cd /etc/netctl
私はstaticを使っているので、thenを使ってサンプル設定ファイルをコピーしましたcp examples/ethernet-static my-network
。その後、インターフェイスmy-network
を使用して編集しnano my-network
、インターフェイスをeth0
(en1s8
またはアダプタが何であれip link
)に変更しました。最後に、起動時にその設定ファイルを使用するようにしましたnetctl enable my-network
。
このプロファイルを有効にすると起動時に起動しますが、システムを再起動せずに実行するとnetctl start my-network
すぐに初期化されます。
私は公式のArch Linuxフォーラムで助けることができました。私のスレッドをチェックしてください。そこ。
答え2
Archlinuxでは、インストーラが自動的に接続されない場合はdhcpcdを試してください。これはインストール後にその場で私に効果的でした。コマンドとして「dhcpcd」と入力し、数秒後に「ip Route」または「ping 8.8.8.8」と入力して動作することを確認してください。私はこれらのinetアドレスとinet6アドレスがどれだけ早く表示されるかを確認するために「ウォッチipアドレス」を使用しました。
dhcpcd を使用する代わりに、次のコマンドを使用して最初から接続することもできます。
modprobe e1000e
ip link set dev eth0 up
ip address add 192.168.0.16/24 dev eth0
ip route add 192.168.0.0/24 dev eth0
ip route add default via 192.168.0.1
modinfoはe1000eが「ネットワークドライバ」であると言います。このモジュールをロードすると、eth0リンクが生成されます(いいえ、/ devで見つからないでください)。 「ip」コマンドはリンクを有効にし、アドレスを選択し、ローカルエリア(サブネット)を定義し、デフォルトゲートウェイを定義します。私はこれをテストするのにかなりの時間を費やしました(IPリンクヘルプ、IPアドレスヘルプ、IPパスヘルプ...)。
したがって、これは暗黙的ですが、「dhcpcd」入力はより速く、おそらくより強力です。 「dhcpcd -x」を使用すると、きちんと停止できます。
/etc/pacman.d/に動作するpingとミラーのリストがあれば、pacmanまたはpacstrapに必要なものがすべてあります。
はい、eth0の名前をenoxxxに変更するカーネルメッセージを見たので、まず「ip link」を使用してsystemdがどのインターフェイスを設定したかを確認する必要があります。ここで起こります:
[ 3.052354] e1000e 0000:00:1f.6 eth0: (PCI Express:2.5GT/s:Width x1) 94:c6:91:a5:39:b8
[ 3.052360] e1000e 0000:00:1f.6 eth0: Intel(R) PRO/1000 Network Connection
[ 3.052445] e1000e 0000:00:1f.6 eth0: MAC: 13, PHY: 12, PBA No: FFFFFF-0FF
[ 3.055917] e1000e 0000:00:1f.6 eno1: renamed from eth0
私のアドレスの.16は任意の(受信者負担)番号であり、192.168.0.1は常にゲートウェイでなければなりません。運が良いかもしれませんが、良いニュースはsystemdとinet6で修正できるということです。それでもnetctlを試してみましょう。
これで、systemdを使用してdhcpcdを起動して起動しました。 「eno1」からアドレス0.15と3つのinet6アドレスを取得しましたが、それ以外の結果は上記の「ip」ハッキングとまったく同じでした。
3: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 94:c6:91:a5:39:b8 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.15/24 brd 192.168.0.255 scope global noprefixroute eno1
valid_lft forever preferred_lft forever
inet6 2a05:41c0:12:bf00::2/128 scope global dynamic noprefixroute
valid_lft 2559430sec preferred_lft 572230sec
inet6 2a05:41c0:12:bf00:f51e:97c1:de6f:6f49/64 scope global dynamic mngtmpaddr noprefixroute
valid_lft 2591994sec preferred_lft 604794sec
inet6 fe80::47cf:a2e4:af0b:b7cd/64 scope link
valid_lft forever preferred_lft forever
default via 192.168.0.1 dev eno1 proto dhcp src 192.168.0.15 metric 203
192.168.0.0/24 dev eno1 proto dhcp scope link src 192.168.0.15 metric 203
答え3
接続できないネットワークは、ネットワークへのパスがないことを意味します。ローカルルータにpingすることができない場合は、IPアドレスがないか、ネットワークインターフェイスがダウンしています。
netctl
ネットワークインターフェイスを管理するためのArchの標準ユーティリティです。設定(または他の設定)していない場合、ネットワークはありません。 DHCPではありません。
答え4
ArchLinuxのネットワーク設定については、ArchLinux Wikiに詳しく説明されています。https://wiki.archlinux.org/index.php/Netctl
最も投票された回答の重要な説明 - 再起動は必要ありません。ネットワークインターフェイスのみが存在し、/etc/netclの設定ファイルで正しいインターフェイス名と設定が使用されている場合(例のコピー名をmynet1と指定)
netctl start mynet1
ネットワークプロファイルmynet1が起動し、ネットワークルーティングが機能します。
しかし、
netclt enable mynet1
起動するたびに、システムサービス管理者はシステムサービスを開始できます。つまり、/etc/systemd/system/netc@[mynetprofilename].service 単位ファイルに、単位の詳細 (デバイスのバインディングと依存関係) を含むファイルを生成します。
また、ネットワーク構成ファイルが変更されたら、netctlを再度有効にする必要があります。