IPアドレスとifconfigの違いは何ですか?

IPアドレスとifconfigの違いは何ですか?

サブネットの場合は、254個のホストが必要です。しかし、これは私のLinux仮想マシンのプライベートIPアドレスであると言いますが、サブネットのように見えます。 ip addrコマンドを使用すると、私のIPは次のよ​​うに10.0.1.178/24表示されますが、ifconfigコマンドを使用すると私のIPアドレスは次のように10.0.1.178表示されます。

出力ip addr

eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc fq_codel state UP group default qlen 1000
    link/ether 02:e4:6b:7e:e5:ea brd ff:ff:ff:ff:ff:ff
    inet 10.0.1.178/24 brd 10.0.1.255 scope global dynamic eth0
       valid_lft 1928sec preferred_lft 1928sec
    inet6 fe80::e4:6bff:fe7e:e5ea/64 scope link 
       valid_lft forever preferred_lft forever

出力ifconfig

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 9001
        inet 10.0.1.178  netmask 255.255.255.0  broadcast 10.0.1.255
        inet6 fe80::e4:6bff:fe7e:e5ea  prefixlen 64  scopeid 0x20<link>
        ether 02:e4:6b:7e:e5:ea  txqueuelen 1000  (Ethernet)
        RX packets 782364  bytes 646522004 (646.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 363184  bytes 42400501 (42.4 MB)

答え1

ip addrとの出力はifconfig同じですが、同じIPアドレスとネットマスクを少し異なって表現したものです。

コンセプト

10.0.1.178/24

あなたのIPアドレスがあり、10.0.1.178ネットワークのネットマスクがそのアドレスの最初の24ビットで構成されていることを示します。この発言と同じです。

inet 10.0.1.178 netmask 255.255.255.0

出力はifconfigより簡潔な表記法であり、カーネルルーティングテーブルに関する限り、あなたのIPアドレスは、アドレス範囲が最大で最大254の異なるシステムをホストできるサブネットに属すると見なされ10.0.1.1ます10.0.1.254

ネットワークマスク情報は、接続が開く必要がある特定のリモートアドレスに到達できるかどうかを決定しようとするときにカーネルに関連しています。たとえば、アドレスは10.0.1.25自分のコンピュータと同じサブネット上にあるため、すぐに接続できますが、接続するには10.0.2.105適切なルーティングを設定する必要があります。

一度見てみたいかもしれませんこのウィキペディア記事またはルーティングに関するこの記事さらなる読書のため。

答え2

スラッシュの後の2番目の部分は、サブネットマスク、つまりプライベートネットワークで使用できるアドレスの数です。あなたの出来事が256の場合。このサブネットチートシートを確認してください。https://www.aelius.com/njh/subnet_sheet.html

答え3

ip(8) は基本的な Linux ネットワーク運用ユーティリティで、iproute2 プロジェクトに属します。 Linuxネットワークトランザクションを制御するためにカーネルNETLINKソケットと対話するために使用できます。

ifconfig(8) は、iproute2 を包むラッパーである BSD 準拠のネットワーク操作ユーティリティです。

簡単に言うと、ifconfig(8) は if ip(8) のサブセットなので、互換性のために維持します。

ヒント:可能であれば、ifconfig(8)の代わりにip(8)を使用してください。

関連情報