서브넷인 경우 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
슬래시 뒤의 두 번째 부분은 서브넷 마스크, 즉 개인 네트워크에서 사용할 수 있는 주소 수입니다. 귀하의 사건이 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)를 사용하십시오.