13 Linux 네트워크 구성 및 문제 해결 명령
컴퓨터는 네트워크로 연결되어 서로 정보나 자원을 교환합니다. 두 대 이상의 컴퓨터가 컴퓨터 네트워크라는 네트워크 미디어를 통해 연결됩니다. 컴퓨터 네트워크를 형성하기 위해서는 수많은 네트워크 장치나 미디어가 관련됩니다.
Linux 운영 체제가 로드된 컴퓨터는 멀티태스킹 및 다중 사용자 특성으로 인해 소규모 네트워크이든 대규모 네트워크이든 네트워크의 일부가 될 수도 있습니다. 시스템과 네트워크를 유지하고 실행하는 것은 시스템/네트워크 관리자의 임무입니다.
이 기사에서는 Linux에서 자주 사용되는 네트워크 구성 및 문제 해결 명령을 검토합니다.
1. ifconfig 명령
ifconfig(인터페이스 구성자) 명령은 인터페이스를 초기화하고 인터페이스에 IP 주소를 할당하고 활성화 또는 활성화하는 데 사용됩니다. 요청 시 인터페이스를 강력>비활성화합니다.
이 명령을 사용하면 인터페이스에 할당된 IP 주소 및 하드웨어/MAC 주소를 볼 수 있으며 MTU(< Strong>최대 전송 단위) 크기입니다.
ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:28:FD:4C
inet addr:192.168.50.2 Bcast:192.168.50.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6093 errors:0 dropped:0 overruns:0 frame:0
TX packets:4824 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6125302 (5.8 MiB) TX bytes:536966 (524.3 KiB)
Interrupt:18 Base address:0x2000
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:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:480 (480.0 b) TX bytes:480 (480.0 b)
인터페이스(eth0) 명령을 사용하는 ifconfig는 IP 주소, MAC 주소 등과 같은 특정 인터페이스 세부정보만 표시합니다. -a
옵션도 비활성화된 경우 사용 가능한 모든 인터페이스 세부 정보를 표시합니다.
ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:0C:29:28:FD:4C
inet addr:192.168.50.2 Bcast:192.168.50.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6119 errors:0 dropped:0 overruns:0 frame:0
TX packets:4841 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6127464 (5.8 MiB) TX bytes:539648 (527.0 KiB)
Interrupt:18 Base address:0x2000
Linux에서 IP 주소 및 게이트웨이 설정
IP 주소 및 게이트웨이를 인터페이스에 즉시 할당합니다. 시스템을 재부팅하면 설정이 제거됩니다.
ifconfig eth0 192.168.50.5 netmask 255.255.255.0
특정 인터페이스 활성화 또는 비활성화
특정 인터페이스를 활성화 또는 비활성화하려면 다음과 같은 예시 명령을 사용합니다.
eth0 활성화
ifup eth0
eth0 비활성화
ifdown eth0
MTU 크기 설정
기본적으로 MTU 크기는 1500입니다. 아래 명령을 사용하여 필요한 MTU 크기를 설정할 수 있습니다. XXXX를 크기로 바꾸세요.
ifconfig eth0 mtu XXXX
무차별 모드에서 인터페이스 설정
네트워크 인터페이스는 특정 NIC에 속하는 패킷만 수신했습니다. 인터페이스를 무차별 모드로 설정하면 모든 패킷을 수신하게 됩니다. 이는 패킷을 캡처하고 나중에 분석하는 데 매우 유용합니다. 이를 위해서는 수퍼유저 액세스가 필요할 수 있습니다.
ifconfig eth0 - promisc
업데이트: ifconfig 명령은 대부분의 최신 Linux 배포판에서 IP 명령으로 대체되었습니다.
2. 핑 명령
Ping(Packet INternet Groper) 명령은 두 노드 간의 연결을 테스트하는 가장 좋은 방법입니다. 근거리 통신망(LAN)이든 광역 통신망(WAN)이든 상관없습니다.
Ping은 ICMP(인터넷 제어 메시지 프로토콜)를 사용하여 다른 장치와 통신합니다. 아래 명령을 사용하여 호스트 이름 또는 IP 주소를 ping할 수 있습니다.
ping 4.2.2.2
PING 4.2.2.2 (4.2.2.2) 56(84) bytes of data.
64 bytes from 4.2.2.2: icmp_seq=1 ttl=44 time=203 ms
64 bytes from 4.2.2.2: icmp_seq=2 ttl=44 time=201 ms
64 bytes from 4.2.2.2: icmp_seq=3 ttl=44 time=201 ms
OR
# ping linux-console.net
PING linux-console.net (50.116.66.136) 56(84) bytes of data.
64 bytes from 50.116.66.136: icmp_seq=1 ttl=47 time=284 ms
64 bytes from 50.116.66.136: icmp_seq=2 ttl=47 time=287 ms
64 bytes from 50.116.66.136: icmp_seq=3 ttl=47 time=285 ms
Linux ping 명령에서는 중단할 때까지 계속 실행됩니다. N번의 요청(성공 또는 오류 응답) 후에 -c
옵션 종료로 ping을 수행합니다.
ping -c 5 linux-console.net
PING linux-console.net (50.116.66.136) 56(84) bytes of data.
64 bytes from 50.116.66.136: icmp_seq=1 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=2 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=3 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=4 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=5 ttl=47 time=285 ms
--- linux-console.net ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4295ms
rtt min/avg/max/mdev = 285.062/285.324/285.406/0.599 ms
3. 경로 추적 명령
traceroute는 목적지에 도달하는 데 걸리는 홉 수를 보여주고 패킷 이동 경로를 결정하는 네트워크 문제 해결 유틸리티입니다. 아래에서는 글로벌 DNS 서버 IP 주소에 대한 경로를 추적하고 있으며 목적지에 도달할 수 있다는 것도 해당 패킷이 이동하는 경로를 보여줍니다.
traceroute 4.2.2.2
traceroute to 4.2.2.2 (4.2.2.2), 30 hops max, 60 byte packets
1 192.168.50.1 (192.168.50.1) 0.217 ms 0.624 ms 0.133 ms
2 227.18.106.27.mysipl.com (27.106.18.227) 2.343 ms 1.910 ms 1.799 ms
3 221-231-119-111.mysipl.com (111.119.231.221) 4.334 ms 4.001 ms 5.619 ms
4 10.0.0.5 (10.0.0.5) 5.386 ms 6.490 ms 6.224 ms
5 gi0-0-0.dgw1.bom2.pacific.net.in (203.123.129.25) 7.798 ms 7.614 ms 7.378 ms
6 115.113.165.49.static-mumbai.vsnl.net.in (115.113.165.49) 10.852 ms 5.389 ms 4.322 ms
7 ix-0-100.tcore1.MLV-Mumbai.as6453.net (180.87.38.5) 5.836 ms 5.590 ms 5.503 ms
8 if-9-5.tcore1.WYN-Marseille.as6453.net (80.231.217.17) 216.909 ms 198.864 ms 201.737 ms
9 if-2-2.tcore2.WYN-Marseille.as6453.net (80.231.217.2) 203.305 ms 203.141 ms 202.888 ms
10 if-5-2.tcore1.WV6-Madrid.as6453.net (80.231.200.6) 200.552 ms 202.463 ms 202.222 ms
11 if-8-2.tcore2.SV8-Highbridge.as6453.net (80.231.91.26) 205.446 ms 215.885 ms 202.867 ms
12 if-2-2.tcore1.SV8-Highbridge.as6453.net (80.231.139.2) 202.675 ms 201.540 ms 203.972 ms
13 if-6-2.tcore1.NJY-Newark.as6453.net (80.231.138.18) 203.732 ms 203.496 ms 202.951 ms
14 if-2-2.tcore2.NJY-Newark.as6453.net (66.198.70.2) 203.858 ms 203.373 ms 203.208 ms
15 66.198.111.26 (66.198.111.26) 201.093 ms 63.243.128.25 (63.243.128.25) 206.597 ms 66.198.111.26 (66.198.111.26) 204.178 ms
16 ae9.edge1.NewYork.Level3.net (4.68.62.185) 205.960 ms 205.740 ms 205.487 ms
17 vlan51.ebr1.NewYork2.Level3.net (4.69.138.222) 203.867 ms vlan52.ebr2.NewYork2.Level3.net (4.69.138.254) 202.850 ms vlan51.ebr1.NewYork2.Level3.net (4.69.138.222) 202.351 ms
18 ae-6-6.ebr2.NewYork1.Level3.net (4.69.141.21) 201.771 ms 201.185 ms 201.120 ms
19 ae-81-81.csw3.NewYork1.Level3.net (4.69.134.74) 202.407 ms 201.479 ms ae-92-92.csw4.NewYork1.Level3.net (4.69.148.46) 208.145 ms
20 ae-2-70.edge2.NewYork1.Level3.net (4.69.155.80) 200.572 ms ae-4-90.edge2.NewYork1.Level3.net (4.69.155.208) 200.402 ms ae-1-60.edge2.NewYork1.Level3.net (4.69.155.16) 203.573 ms
21 b.resolvers.Level3.net (4.2.2.2) 199.725 ms 199.190 ms 202.488 ms
4. Netstat 명령
Netstat(Network Statistic) 명령은 연결 정보, 라우팅 테이블 정보 등을 표시합니다. 라우팅 테이블 정보를 표시하려면 옵션을 -r
로 사용합니다.
netstat -r
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.50.0 * 255.255.255.0 U 0 0 0 eth0
link-local * 255.255.0.0 U 0 0 0 eth0
default 192.168.50.1 0.0.0.0 UG 0 0 0 eth0
Netstat 명령의 더 많은 예를 보려면 Linux의 20가지 Netstat 명령 예에 대한 이전 기사를 읽어보세요.
업데이트: netstat 명령은 대부분의 최신 Linux 배포판에서 ss(소켓 통계) 명령으로 대체되었습니다.
5. 발굴 명령
Dig(domain information groper)는 A
레코드, CNAME 등 DNS 관련 정보를 쿼리합니다. , MX 레코드 등. 이 명령은 주로 DNS 관련 쿼리 문제를 해결하는 데 사용됩니다.
dig linux-console.net; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> linux-console.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<
Dig 명령의 더 많은 예를 보려면 DNS 쿼리를 위한 10가지 Linux Dig 명령에 대한 기사를 읽어보세요.
6. Nslookup 명령
nslookup 명령은 DNS 관련 쿼리를 찾는 데에도 사용됩니다. 다음 예는 linux-console.net의 A
레코드(IP 주소)를 보여줍니다.
nslookup linux-console.net
Server: 4.2.2.2
Address: 4.2.2.2#53
Non-authoritative answer:
linux-console.net canonical name = linux-console.net.
Name: linux-console.net
Address: 50.116.66.136
Nslookup 명령에 대한 자세한 내용은 8가지 Linux Nslookup 명령 예에 대한 기사를 읽어보세요.
7. 경로 명령
route 명령은 ip 라우팅 테이블도 표시하고 조작합니다. Linux에서 기본 라우팅 테이블을 보려면 다음 명령을 입력하세요.
route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.50.0 * 255.255.255.0 U 0 0 0 eth0
link-local * 255.255.0.0 U 1002 0 0 eth0
default 192.168.50.1 0.0.0.0 UG 0 0 0 eth0
다음 명령을 사용하여 경로 및 기본 게이트웨이를 추가, 삭제합니다.
Linux에서 경로 추가
route add -net 10.10.10.0/24 gw 192.168.0.1
Linux에서 경로 삭제
route del -net 10.10.10.0/24 gw 192.168.0.1
Linux에서 기본 게이트웨이 추가
route add default gw 192.168.0.1
8. 호스트 명령
IPv4 또는 IPv6IP 또는 IP에 대한 이름을 찾는 host 명령 > DNS 레코드도 쿼리합니다.
host www.google.com
www.google.com has address 173.194.38.180
www.google.com has address 173.194.38.176
www.google.com has address 173.194.38.177
www.google.com has address 173.194.38.178
www.google.com has address 173.194.38.179
www.google.com has IPv6 address 2404:6800:4003:802::1014
CNAME, NS, MX, SOA와 같은 DNS 리소스 레코드를 찾는 옵션으로 -t
사용 , 등
host -t CNAME www.redhat.com
www.redhat.com is an alias for wildcard.redhat.com.edgekey.net.
9. 아르프 명령
ARP(주소 확인 프로토콜)는 커널의 ARP 테이블 콘텐츠를 보기/추가하는 데 유용합니다. 기본 테이블을 보려면 as 명령을 사용하십시오.
arp -e
Address HWtype HWaddress Flags Mask Iface
192.168.50.1 ether 00:50:56:c0:00:08 C eth0
10. Ethtool 명령
ethtool은 mii-tool을 대체합니다. 네트워크 인터페이스 카드(NIC)의 속도 및 이중 방식을 확인하고 설정하는 것입니다. ETHTOOL_OPTS 변수를 사용하여 /etc/sysconfig/network-scripts/ifcfg-eth0에서 이중 방식을 영구적으로 설정할 수 있습니다.
ethtool eth0
Settings for eth0:
Current message level: 0x00000007 (7)
Link detected: yes
11. Iwconfig 명령
Linux의 iwconfig 명령은 무선 네트워크 인터페이스를 구성하는 데 사용됩니다. SSID 채널 및 암호화와 같은 기본 Wi-Fi 세부정보를 보고 설정할 수 있습니다. 자세한 내용은 iwconfig의 매뉴얼 페이지를 참조하세요.
iwconfig [interface]
12. 호스트 이름 명령
호스트 이름은 네트워크에서 식별하기 위한 것입니다. hostname 명령을 실행하여 상자의 호스트 이름을 확인하세요. /etc/sysconfig/network에서 호스트 이름을 영구적으로 설정할 수 있습니다. 적절한 호스트 이름을 설정한 후 상자를 재부팅해야 합니다.
hostname
linux-console.net
13. Nmcli 및 Nmtui 도구
Nmcli 및 Nmtui 도구는 네트워크 설정을 구성하는 데 사용되며 Linux 시스템에서 네트워크 장치를 관리하고 네트워크 연결을 생성, 수정, 활성화/비활성화 및 삭제하는 데도 사용됩니다.
nmcli
nmtui
이 문서는 Linux/Unix 계열 운영 체제에서 Linux 네트워크 관리자를 일상적으로 사용하는 데 유용할 수 있습니다. 놓친 경우 댓글 상자를 통해 친절하게 공유해 주세요.