나는 ‘ifconfig’명령에 대한 기사 / 튜토리얼을 읽었으며, 대부분은 공통 진술을 포함했습니다.
“ifconfig는 ip 명령에 의해 사용되지 않습니다”
그리고 ip 명령을 배우도록 제안했습니다. 그러나 그들 중 누구도 ‘ip’명령이 ‘ifconfig’보다 강력한 지 설명하지 못했습니다.
둘의 차이점은 무엇입니까?
답변
ifconfig
from net-tools
이며 Linux 네트워크 스택을 오랫동안 완전히 유지할 수 없었습니다. 또한 ioctl
네트워크 구성 에도 여전히 사용 되는데, 이는 커널과 상호 작용하는 추악하고 덜 강력한 방법입니다.
net-tools
다중 경로 라우팅, 정책 라우팅 (RPDB 참조)을 사용하여 Linux 네트워킹 코드의 많은 변경 사항 및 많은 새로운 기능에 액세스 할 수 없습니다 . route
동일한 측정 항목을 사용하여 동일한 대상에 여러 경로를 추가하는 것과 같은 어리석은 작업을 수행 할 수 있습니다.
또한 :
ifconfig
일부 장치에 대한 올바른 하드웨어 주소를보고하지 않습니다.- 당신은 구성 할 수 없습니다
ipip
,sit
,gre
,l2tp
, 등의 커널 정적 터널. - 당신은 만들 수 없습니다
tun
또는tap
장치. - 주어진 인터페이스에 여러 주소를 추가하는 방법도 의미가 떨어집니다.
- 또한 Linux 트래픽 제어 시스템을 사용하여 구성 할 수 없습니다
net-tools
.
ifconfig
짜증 도 참조하십시오 .
편집 : net-tools
개발 중단 에 대한 주장을 제거 하여 지금 까지이 게시물의 위치를 잊어 버렸습니다. net-tools
‘은 iproute2
대부분 버그 수정 및 국제화와 같은 사소한 기능 향상 및 기능이지만 릴리스 된 이후 로 계속 작업 하고 있습니다.
답변
ifconfig
네트워크 인터페이스에 대한 정보를 표시하고 일부 설정을 변경하는 일반적인 명령입니다. 특히 인터페이스를 위아래로 가져올 수 있습니다. 대부분의 유닉스 변종에 존재합니다.
Linux에서는 ifconfig
명령이 오랫동안 발전하지 않았습니다. 그것은 여전히 그 일에 완벽하게 좋습니다. ifconfig
무언가를 사용 하고 있다면 멈출 이유가 없습니다.
리눅스는 또한 iproute2 툴 슈트 ip
에서 명령을 제공합니다 . 이 명령은 , 및을 포함하여 몇 가지 클래식 명령 등을 결합합니다 . 보다 더 많은 것을 할 수 있습니다 . 반면에 , 특히 임베디드 시스템에는 항상 존재하지는 않습니다 (Linux 이외의 유닉스 변형에는 절대 포함되지 않음).ip
ifconfig
route
arp
ip
ifconfig
ip
파싱 ifconfig
의 출력이 다소 짜증납니다. 파싱 ip
의 출력이 다소 짜증납니다. 거기에 승자가 없습니다.
답변
pilona의 답변에 약간의 비트를 추가하십시오. 2005 년경 네트워크 스택을 제어하기위한 새로운 메커니즘 인 netlink 소켓 이 도입되었습니다 .
네트워크 인터페이스를 구성하려면 시스템 호출 에 의존 iproute2
하면서 전이중 네트워크 링크 소켓 메커니즘을 ifconfig
사용합니다 ioctl
. 다음은 netlink의 동기 와 rtnetlink 사용법에 대한 두 가지 주요 논문입니다 .