참고: https://www.tecmint.com/ifconfig-command-examples/
ifconfig는 리눅스 운영체제의 커맨드라인 인터페이스나 시스템 구성 스크립트를 통해 네트워크 인터페이스의 매개변수를 구성, 관리 및 쿼리하기 위한 간단한 인터페이스 설정 유틸리티입니다. ifconfig 명령어는 현재 네트워크 구성 정보를 표시하고, 네트워크 인터페이스에 대한 IP 주소, 넷마스크 또는 브로드캐스트 주소를 설정하고, 네트워크 인터페이스에 대한 별칭을 만들고, 하드웨어 주소를 설정하고, 네트워크 인터페이스를 활성화 또는 비활성화하는데 사용합니다.
1. 모든 네트워크 인터페이스 설정 보기
인수 없이 ifconfig 명령어를 사용하면 모든 활성 인터페이스 세부 정보를 표시합니다. 또한 ifconfig 명령은 서버에 할당된 IP 주소를 확인하는데 사용합니다.
# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0B:CD:1C:18:5A
inet addr:172.16.25.126 Bcast:172.16.25.63 Mask:255.255.255.224
inet6 addr: fe80::20b:cdff:fe1c:185a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2341604 errors:0 dropped:0 overruns:0 frame:0
TX packets:2217673 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:293460932 (279.8 MiB) TX bytes:1042006549 (993.7 MiB)
Interrupt:185 Memory:f7fe0000-f7ff0000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:5019066 errors:0 dropped:0 overruns:0 frame:0
TX packets:5019066 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2174522634 (2.0 GiB) TX bytes:2174522634 (2.0 GiB)
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.1.1.1 P-t-P:10.1.1.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
2. 모든 네트워크 인터페이스의 정보 표시
-a 인수를 사용한 다음의 ifconfig 명령어는 서버의 모든 활성/비활성 네트워크 인터페이스 정보를 표시합니다. eth0, lo, sit0 및 tun0에 대한 결과를 표시합니다.
# ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:0B:CD:1C:18:5A
inet addr:172.16.25.126 Bcast:172.16.25.63 Mask:255.255.255.224
inet6 addr: fe80::20b:cdff:fe1c:185a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2344927 errors:0 dropped:0 overruns:0 frame:0
TX packets:2220777 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:293839516 (280.2 MiB) TX bytes:1043722206 (995.3 MiB)
Interrupt:185 Memory:f7fe0000-f7ff0000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:5022927 errors:0 dropped:0 overruns:0 frame:0
TX packets:5022927 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2175739488 (2.0 GiB) TX bytes:2175739488 (2.0 GiB)
sit0 Link encap:IPv6-in-IPv4
NOARP MTU:1480 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.1.1.1 P-t-P:10.1.1.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
3. 특정 인터페이스의 네트워크 설정 보기
인터페이스 이름을 ifconfig 명령어와 함께 인수로 사용하면 특정 네트워크 인터페이스의 세부 정보가 표시됩니다.
# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:0B:CD:1C:18:5A
inet addr:172.16.25.126 Bcast:172.16.25.63 Mask:255.255.255.224
inet6 addr: fe80::20b:cdff:fe1c:185a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2345583 errors:0 dropped:0 overruns:0 frame:0
TX packets:2221421 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:293912265 (280.2 MiB) TX bytes:1044100408 (995.7 MiB)
Interrupt:185 Memory:f7fe0000-f7ff0000
4. 네트워크 인터페이스를 활성화하는 방법
up이나 ifup 플래그와 인터페이스 이름을 통해 네트워크 인터페이스가 비활성화 상태가 아니고 정보를 주고받을 수 있는 상태인 경우 네트워크 인터페이스를 활성화합니다. 예를 들어 ifconfig eth0 up 또는 ifup eth0을 입력하면 eth0 인터페이스를 활성화합니다.
# ifconfig eth0 up
OR
# ifup eth0
5. 네트워크 인터페이스를 비활성화하는 방법
down이나 ifdown 플래그와 인터페이스 이름을 통해 지정된 인터페이스를 비활성화 합니다. 예를 들어 ifconfig eth0 down 또는 ifdown eth0 명령어를 입력하면 eth0 인터페이스를 비활성화합니다.
# ifconfig eth0 down
OR
# ifdown eth0
6. 네트워크 인터페이스에 IP 주소를 할당하는 방법
특정 인터페이스에 IP 주소를 할당하려면 설정하려는 인터페이스 이름 및 IP 주소와 함께 다음의 명령어를 사용합니다. 예를 들어 ifconfig eth0 172.16.1.1 은 IP 주소를 eth0에 설정합니다.
# ifconfig eth0 172.16.1.1
7. 네트워크 인터페이스에 넷마스크를 할당하는 방법
netmask 인수, 인터페이스 이름과 함께 ifconfig 명령어를 사용하면 주어진 인터페이스에 대한 넷마스크를 정의할 수 있습니다. 예를 들어 ifconfig eth0 netmask 255.255.255.224 를 입력하면 네트워크 마스크를 eth0에 설정합니다.
# ifconfig eth0 netmask 255.255.255.224
8. 네트워크 인터페이스에 브로드캐스트를 할당하는 방법
인터페이스 이름과 함께 broadcast 인수를 사용하면 주어진 인터페이스에 대한 브로드캐스트 주소를 설정합니다. 예를 들어 ifconfig eth0 broadcast 172.16.1.255 명령은 브로드캐스트 주소를 인터페이스 eth0에 설정합니다.
# ifconfig eth0 broadcast 172.16.1.255
9. 네트워크 인터페이스에 IP, 넷마스크 및 브로드캐스트를 할당하는 방법
IP 주소, 넷마스크 주소, 브로드캐스트 주소를 모두 할당하려면 아래와 같이 모든 인수와 함께 ifconfig 명령을 사용하면 됩니다.
# ifconfig eth0 172.16.25.125 netmask 255.255.255.224 broadcast 172.16.25.63
10. 네트워크 인터페이스의 MTU를 변경하는 방법
mtu 인수는 인터페이스에 대한 최대 전송 단위를 설정합니다. MTU를 사용하면 인터페이스에서 전송되는 패킷의 제한 크기를 설정할 수 있습니다. MTU는 하나의 단일 트랜잭션에서 인터페이스에 대한 최대 옥텟 수를 처리할 수 있습니다. 예를 들어 ifconfig eth0 mtu 1000 은 최대 전송 단위를 1000으로 설정합니다. 모든 네트워크 인터페이스가 MTU를 지원하는 것은 아닙니다.
# ifconfig eth0 mtu 1000
11. promiscuous 모드(무차별모드)를 활성화하는 방법
일반 모드에서는 패킷이 네트워크 카드에 수신되면 자신에게 속하는지 확인하고 그렇지 않은 경우 패킷을 정상적으로 드롭하지만 무차별 보드에서는 네트워크 카드를 통해 흐르는 모든 패킷을 수락하게 됩니다. 오늘날의 네트워크 툴은 무차별 모드를 사용하여 네트워크 인터페이스에 흐르는 패킷을 캡쳐하고 분석합니다. 무차별 모드를 사용하려면 다음 명령을 사용합니다.
# ifconfig eth0 promisc
12. promiscuous 모드(무차별모드)를 비활성화하는 방법
무차별 모드를 비활성화하려면 네트워크 인터페이스를 일반 모드로 되돌리는 -promisc 인수를 사용합니다.
# ifconfig eth0 -promisc
13. 네트워크 인터페이스에 새 별칭을 추가하는 방법
ifconfig 유틸을 사용하면 별칭 기능을 사용하여 추가 네트워크 인터페이스를 구성할 수 있습니다. eth0에 별칭 네트워크 인터페이스를 추가하려면 다음 명령어를 사용합니다. 별칭 네트워크 주소는 동일한 서브넷 마스크내에 존재합니다. 예를 들어 eth0 네트워크 IP 주소가 172.16.1.125인 경우 별칭 IP 주소는 172.16.1.127과 같이 같은 서브넷 범위내의 값이어야 합니다. 설정 후 ifconfig eth0:0 명령을 사용하여 새로 생성된 별칭 네트워크 인터페이스 주소를 확인합니다.
# ifconfig eth0:0 172.16.1.127
# ifconfig eth0:0
14. 네트워크 인터페이스에 대한 별칭을 제거하는 방법
별칭 네트워크 인터페이스가 더 이상 필요하지 않거나 잘못 구성된 경우 다음 명령을 사용하여 제거할 수 있습니다.
# ifconfig eth0:0 down
15. 네트워크 인터페이스의 MAC 주소를 변경하는 방법
eth0 네트워크 인터페이스의 MAC(Media Access Control) 주소를 변경하려면 hw ether 인수와 함께 다음 명령을 입력합니다.
# ifconfig eth0 hw ether AA:BB:CC:DD:EE:FF
정리
ifconfig 명령어는 리눅스에서 네트워크 인터페이스를 구성하는데 가장 유용한 명령입니다. 자세한 정보와 ifconfig 명령어 사용법은 터미널에서 man ifconfig와 같이 맨페이지를 참고하면 됩니다.
'dev > unix-like' 카테고리의 다른 글
[linux] 리눅스 OS 확인 (0) | 2022.09.29 |
---|---|
[linux] 리눅스 IP 주소 확인 방법 (2) | 2022.09.21 |
[linux] 리눅스 CMD에서 OS 버전 확인하는 방법 (0) | 2022.01.13 |
[linux] 리눅스 10가지 wget 명령어 사용법 (1) | 2022.01.13 |
[linux] 리눅스 tail 명령어 사용 예제 (실시간 로그 보기) (0) | 2019.12.10 |
댓글