私のLAN IP(ubuntuと欠落しているeth0)は何ですか?

私のLAN IP(ubuntuと欠落しているeth0)は何ですか?

20.04を実行しています。ラップトップのLAN IPを見つけようとしています。実行すると、ifconfig次のような結果が得られます。

$ ifconfig
docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 172.17.0.1  netmask 255.255.0.0  broadcast 172.17.255.255
        ...

enp0s31f6: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ...
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        ...

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ...

virbr1: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.39.1  netmask 255.255.255.0  broadcast 192.168.39.255
        ...

wlp0s20f3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.23  netmask 255.255.255.0  broadcast 192.168.0.255
        ...

上記のうち私のIPは何ですか?たとえば、LAN上の他のPCからこのラップトップにSSHで接続するときにどのIPを使用しますか?

eth0また、「古い」時代には常に(Ubuntuでも)見ていましたが、もはや使用されていないようです。

https://www.linuxquestions.org/questions/linux-networking-3/eth0-is-not-displayed-in-ifconfig-4175444486/

ベストアンサー1

enp0s31f6ロゴを表示するUPが表示しないRUNNING:これは通常、現在有効なリンクがないことを意味します。

一方、存在と記号がwlp0s20f3同時に存在します。名前プレフィックスは、これがワイヤレスインターフェイスであることを示します。これはラップトップと言うのと同じです。プレフィックスは有線インターフェイスを表します。UPRUNNINGwlen

したがって、インターフェイスのIPアドレスwlp0s20f3(たとえば192.168.0.23)は、他の物理ホストのインバウンドSSH接続に使用されます。

インターフェイスdocker0であり、Dockerコンテナおよび/またはそのシステムで実行されている仮想マシン間のネットワーク接続を容易にするために使用されます。他の設定によっては、コンテナ/ VMがホストオペレーティングシステムvirbr0とのvirbr1み通信できるようにするか、NATベースのアクセスを許可できます。これは物理ホストの外部にあります。正確な目的を理解するには、iptables NAT および前方フィルタリング規則 (例: sudo iptables -Lvn -t NATiptables) を調査する必要があるかもしれませんsudo iptables -Lvn

ラップトップのファームウェアに適切なデータロギングが組み込まれている場合は、統合された有線ネットワークインターフェースをとして識別し、ワイヤレスeno1ネットワークインターフェースをとして識別する必要がありますwlo1。しかし、ラップトップのファームウェアにはこれらの記録は含まれていないようです。必要に応じて、2つの単純なファイルを作成してインターフェース名を変更できます/etc/systemd/network/*.link

sudo udevadm info -q all -p /sys/class/net/enp0s31f6 | grep -e ID_NET_NAME -e ID_PATHまず、ハードウェアパスを識別し、たとえば、次のように自動的に検出されたネットワークインターフェース候補名を識別する必要があります。出力は次のとおりです。

# udevadm info -q all -p /sys/class/net/enp0s31f6 | grep -e ID_NET_NAME -e ID_PATH
E: ID_NET_NAME_MAC=enx0123456789ab
E: ID_NET_NAME_ONBOARD=eno1
E: ID_NET_NAME_PATH=enp0s31f6
E: ID_PATH=pci-0000:00:1f.6
E: ID_PATH_TAG=pci-0000_00_1f_6
E: ID_NET_NAME=enp0s31f6

この行が表示されない場合は、ID_NET_NAME_ONBOARDシステムファームウェアがネットワークインターフェイスをオンボードインターフェイスとして正しく認識しない可能性があります。理想的には、割り当てられた名前を使用するようにインターフェイス名を変更することでこの問題を解決できます。このインターフェースの名前を変更するには、その行を記録し、それを使用して以下を含むID_PATH=構成ファイルを作成する必要があります。/etc/systemd/network/70-eno1.link

[Match]
Path=pci-0000:00:1f.6

[Link]
Name=eno1    #or whatever you want

ワイヤレスインターフェースも同様です。

Name=またNamePolicy=、設定を使用して事前に生成されたID_NET_NAME_*候補を選択するか、明示的に設定するのではなく、事前に生成された名前が選択される優先順位を設定することもできます。man 5 systemd.link詳細は参照してください。

これらのファイルを作成したら、initramfs()を更新して再起動する必要がありますsudo update-inintramfs -u。再起動したら、必要な名前のインターフェイスを見つける必要があります。

これは、enp0s31f6PCI デバイスパスに基づく名前です。つまり、PCI デバイスを00:1f.631 = 0x1f と表します。今回もwlp0s20f3PCIデバイス00:14.3(20 = 0x14)になります。

おすすめ記事