포스트

네트워크 기초 개념

네트워크 기초 개념

1. IP 주소란?

IP 주소는 네트워크에서 각 장치를 식별하는 고유한 주소이다. 인터넷과 같은 네트워크에서 컴퓨터, 스마트폰, 서버 등이 서로 통신하려면 IP 주소가 필요하다.

📌 IP 주소의 종류

IP 주소는 크게 두 가지로 나뉜다.

  • IPv4 : 32비트 주소 체계 (예: 192.168.1.1)
  • IPv6 : 128비트 주소 체계 (예: 2001:db8::ff00:42:8329)

현재까지는 IPv4가 주로 사용되지만, IP 부족 문제로 IPv6로 점점 전환되는 중이다.


2. IP 주소의 특징

IP 주소는 네트워크 부분호스트 부분으로 구성된다.

✅ 같은 네트워크에서의 통신

  • 같은 네트워크(같은 브로드캐스트 도메인)에서 통신하려면, 네트워크 주소가 같고, 호스트 주소는 달라야 한다.
  • 만약 호스트 주소가 중복되면 IP 충돌이 발생하여 정상적인 통신이 불가능하다.

✅ 다른 네트워크 간의 통신

  • 네트워크 주소가 다르면 기본적으로 직접 통신할 수 없다.
  • 하지만 라우터(Router)나 게이트웨이(Gateway) 같은 네트워크 장비를 사용하면 다른 네트워크와도 통신할 수 있다.

✅ 브로드캐스트 도메인(Broadcast Domain)

  • 같은 네트워크 대역 안에서 직접 통신할 수 있는 범위를 의미한다.
  • 브로드캐스트 패킷(모든 호스트에게 보내는 패킷)이 도달할 수 있는 영역이기도 하다.
  • 네트워크를 나누면 브로드캐스트 도메인이 분리되어 네트워크 부하를 줄일 수 있다.

✅ 호스트 IP의 유일성

  • 같은 네트워크에서 각 호스트(컴퓨터, 서버, 장비 등)는 고유한 IP 주소를 가져야 한다.
  • IP 주소는 주민등록번호처럼 중복될 수 없는 유일한 식별자 역할을 한다.

3. 호스트란?

호스트는 네트워크에 연결되어 다른 장치들과 데이터를 주고받을 수 있는 모든 장치를 의미한다.

  • 각 호스트는 네트워크 내에서 고유한 IP 주소를 가진다.
  • 예: 개인용 컴퓨터, 서버, 스마트폰, 프린터, IoT 기기 등

4. 서브네팅(Subnetting)이란?

서브네팅(Subnetting) 은 하나의 큰 네트워크를 여러 개의 작은 네트워크(서브넷, Subnet)로 나누는 과정을 의미한다.

🔹 서브네팅을 하는 이유

  • 네트워크 효율성 향상 :
    • 큰 네트워크는 브로드캐스트 트래픽이 많아 성능이 저하될 수 있다.
    • 서브네팅을 통해 네트워크를 작은 단위로 나누면 브로드캐스트 트래픽을 줄여 효율성을 높일 수 있다.
  • 보안 강화 :
    • 서브넷 간에 방화벽을 설치하여 특정 서브넷에 대한 접근을 제한할 수 있다.
  • 네트워크 관리 용이성 :
    • 서브넷 단위로 네트워크를 관리하면 전체 네트워크를 관리하는 것보다 효율적이다.
    • 각 서브넷에 대한 IP 주소 할당, 보안 정책 설정 등을 독립적으로 수행할 수 있다.
  • IP 주소 낭비 방지 :
    • 기존의 클래스 기반 주소 체계에서는 사용하지 않는 IP 대역이 발생할 수 있다.
    • 서브네팅을 통해 필요한 만큼만 IP를 할당하여 낭비를 줄일 수 있다.

5. 서브넷 마스크란?

서브넷 마스크(Subnet Mask)는 IP 주소에서 네트워크 부분과 호스트 부분을 구분하는 역할을 한다.

🔹 서브넷 마스크의 개념

  • 서브넷 마스크는 255.255.255.0 같은 형식으로 표현된다.
  • 255가 있는 부분이 네트워크 주소를 나타내고,
  • 0이 있는 부분이 호스트 주소를 나타낸다.
  • 예를 들어, IP 주소 192.168.1.1과 서브넷 마스크 255.255.255.0이 있다면,
    • 네트워크 주소: 192.168.1.0
    • 호스트 주소: 1 (즉, 1~254까지의 값 사용 가능)
  • 서브넷 마스크 확인하는 명령어:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    
      networksetup -getinfo Wi-Fi
        
      // 결과
      DHCP Configuration
      IP address: 192.168.0.3 // 아이피 주소 (사설 아이피)
      Subnet mask: 255.255.255.0 // 서브넷 마스크
      Router: 192.168.0.1 라우터 // 현재 맥북이 사용하고 있는 네트워크 게이트웨이 IP주소
      Client ID: 
      IPv6: Automatic
      IPv6 IP address: none
      IPv6 Router: none
      Wi-Fi ID: 84:94:37:e8:a8:63 // 현재 맥북이 연결되어 있는 Wi-Fi 공유기의 MAC 주소
    

🔹 CIDR 표기법

서브넷 마스크는 CIDR(Classless Inter-Domain Routing) 표기법으로도 표현할 수 있다.

  • 255.255.255.0/24
  • 255.255.0.0/16
  • 255.0.0.0/8

예를 들어, 192.168.1.0/24서브넷 마스크가 255.255.255.0인 네트워크를 의미한다.


6. ARP (Address Resolution Protocol)란?

ARP(Address Resolution Protocol, 주소 결정 프로토콜)는 IP 주소를 MAC 주소(물리적 주소)로 변환하는 프로토콜이다.

🔹 ARP의 필요성

  • IP 주소는 네트워크에서 논리적인 주소일 뿐이고, 실제 데이터 전송에는 MAC 주소(물리적 주소) 가 필요하다.
  • 따라서 IP 주소를 기반으로 MAC 주소를 찾는 과정이 필요하며, 이를 ARP가 수행한다.

🔹 ARP 동작 과정

  1. 호스트 A가 호스트 B (192.168.1.20)에게 데이터를 보내려고 한다.
  2. A는 192.168.1.20의 MAC 주소를 모르므로, ARP 요청(브로드캐스트 패킷)을 네트워크에 보낸다.

    1
    
     "192.168.1.20을 사용 중인 장치는 MAC 주소를 알려줘!"
    
  3. 네트워크 내 모든 장치가 이 요청을 받지만, 192.168.1.20을 사용하는 B만 응답을 보낸다.

    1
    
     "나는 192.168.1.20이야! 내 MAC 주소는 AA:BB:CC:DD:EE:FF야."
    
  4. A는 받은 MAC 주소를 ARP 테이블에 저장하고, 이후에는 ARP 요청 없이 바로 데이터를 전송할 수 있다

🔹 ARP 캐시 테이블

  • 네트워크 부하를 줄이기 위해 조회한 MAC 주소를 일정 시간 동안 저장한다.
  • ARP 테이블을 확인하는 명령어:

    1
    2
    3
    4
    5
    6
    7
    
      arp -a
        
      // 결과
      ? (192.168.0.1) at 58:86:94:9b:70:24 on en0 ifscope [ethernet]
      ? (192.168.0.2) at da:45:45:7d:85:e7 on en0 ifscope [ethernet]
      ? (192.168.0.10) at 9e:74:c2:e4:cc:35 on en0 ifscope [ethernet]
      mdns.mcast.net (224.0.0.251) at 1:0:5e:0:0:fb on en0 ifscope permanent [ethernet]
    

🔹 ARP의 종류

  1. 일반 ARP : 목적지 IP 주소에 대한 MAC 주소를 조회하는 기본적인 ARP.
  2. Gratuitous ARP : 자신의 MAC 주소를 네트워크에 알리거나, IP 충돌을 감지하는 ARP.
  3. Proxy ARP : 다른 네트워크에 있는 장치의 ARP 요청을 대신 응답하는 방식.

7. 공인 IP와 사설 IP

✅ 공인 IP (Public IP)

  • 인터넷에 직접 연결되는 전 세계에서 유일한 IP 주소
  • ISP(인터넷 서비스 제공업체)에서 할당해줌
  • 예) 211.45.67.89, 8.8.8.8 (구글 DNS)

✅ 사설 IP (Private IP)

  • 내부 네트워크(회사, 가정 등)에서만 사용되는 IP
  • 인터넷에서는 직접 사용 불가능 (NAT를 통해 공인 IP로 변환해야 함)
  • 사설 IP 대역
    • 10.0.0.0 ~ 10.255.255.255
    • 172.16.0.0 ~ 172.31.255.255
    • 192.168.0.0 ~ 192.168.255.255
  • 예) 192.168.1.100, 10.0.0.50

8. 게이트웨이란?

게이트웨이(Gateway)는 다른 네트워크와 통신할 때 거치는 출입구 역할을 하는 네트워크 장비이다.

  • 같은 네트워크 내에서는 직접 통신 가능
  • 다른 네트워크로 데이터를 보내려면 게이트웨이(보통 라우터)를 통해야 한다.
  • 예) 192.168.1.1 (공유기의 기본 게이트웨이)

9. NAT(Network Address Translation)

NAT공인 IP와 사설 IP를 변환하는 기술이다.

  • 사설 IP를 가진 장비가 인터넷에 접속할 때 공인 IP로 변환해야 함
  • 공유기(라우터)에서 NAT를 사용하여 변환 수행
  • 예) 가정 내 여러 기기가 하나의 공인 IP를 사용해 인터넷에 접속

10. DNS(Domain Name System)

DNS도메인 이름을 IP 주소로 변환하는 시스템이다.

  • 예) www.google.com142.250.190.78
  • 사람이 기억하기 쉬운 도메인 주소를 사용하게 해줌
  • 대표적인 DNS 서버
    • 구글 DNS: 8.8.8.8
    • 클라우드플레어 DNS: 1.1.1.1

11. MAC 주소

MAC 주소네트워크 장치의 고유한 물리적 주소이다.

  • 네트워크 인터페이스 카드(NIC) 또는 Wi-Fi 어댑터와 같은 네트워크 장치에 하드웨어적으로 할당된다.
  • 일반적으로 16진수로 표현이 된다. (예 : 00:1A:2B:3C:4D:5E)
  • 제조사 코드와 장치 고유 번호로 구성된다.
    • 앞 부분의 3바이트는 제조사이고 뒷부분 3바이트는 제조사에서 할당한 장치 고유 번호를 나타낸다.
  • 데이터 링크 계층에서 통신할떄 사용되며, 로컬 네트워크 내에서 장치를 식별하는 사용된다.
  • IP 주소와 달리 MAC 주소는 변경되지 않는다. (소프트웨어적으로 가능하다. 예 : 가상머신)
  • ARP(Address Resolution Protocol) 프로토콜을 사용하여 IP주소를 MAC주소로 변환한다.
  • LAN내의 송수신지를 특정하는데 사용된다.

12. 네트워크 인터페이스

네트워크 인터페이스는 컴퓨터가 네트워크와 통신하기 위해 사용하는 하드웨어 또는 소프트웨어 구성 요소이다. 네트워크 인터페이스는 컴퓨터가 네트워크 케이블을 연결하거나 무선 신호를 송수신하여 다른 장치와 데이터를 주고받을 수 있도록 해주는 역할을 한다.

종류

  1. 물리적 네트워크 인터페이스
    • 실제로 눈에 보이는 하드웨어 장치
    • 이더넷 카드(Ethernet Card) : 유선 네트워크 연결에 사용되는 인터페이스, 컴퓨터 뒷면에 있는 랜포트가 대표적인 예시
    • 무선 랜 카드(Wireless LAN Card) : Wi-Fi를 사용하여 무선 네트워크에 연결하는 인터페이스, 노트북에 내장된 Wi-Fi 어댑터가 대표적인 예시
  2. 논리적 네트워크 인터페이스
    • 소프트웨어적으로 생성되는 가상의 인터페이스
    • 루프백 인터페이스(Loopback Interface) : 자신의 컴퓨터와 통신하는 데 사용되는 가상의 인터페이스이다. IP 주소는 127.0.0.1이며, 주로 네트워크 프로그래밍 테스트에 사용
    • 가상 네트워크 인터페이스 (Virtual Networ Interface) : 가상 머신이나 컨테이너에서 사용되는 인터페이스이다. 호스트 운영체제와 게스트 운영체제간의 통신을 가능하게 해준다.
    • VPN 인터페이스 : VPN 연결을 통해 생성되는 인터페이스이다. 암호화된 터널을 통해 안전하게 통신할 수 있도록 해준다.

역할 💡

  1. 물리적 연결
    • 네트워크 케이블을 연결하거나 무선 신호를 송수신하여 네트워크에 물리적으로 연결한다.
  2. 데이터 송수신
    • 컴퓨터에서 생성된 데이터를 네트워크를 통해 전송하고, 네트워크에서 받은 데이터를 컴퓨터가 이해할 수 있는 형태로 변환한다.
  3. MAC 주소 관리
    • 각 네트워크 인터페이스는 고유한 MAC 주소를 가지고 있으며, 이 MAC 주소를 사용하여 네트워크 상에서 자신을 식별한다.
  4. IP 주소 관리
    • 각 네트워크 인터페이스는 IP 주소를 할당받아 네트워크 상에서 통신할 수 있다.

네트워크 인터페이스 정보 확인 방법

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
ifconfig 입력

lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
	options=1203<RXCSUM,TXCSUM,TXSTATUS,SW_TIMESTAMP>
	inet 127.0.0.1 netmask 0xff000000
	inet6 ::1 prefixlen 128 
	inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 
	nd6 options=201<PERFORMNUD,DAD>
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
anpi1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
	options=400<CHANNEL_IO>
	ether 96:f0:d7:b5:4e:51
	media: none
	status: inactive
anpi0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
	options=400<CHANNEL_IO>
	ether 96:f0:d7:b5:4e:50
	media: none
	status: inactive
en3: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
	options=400<CHANNEL_IO>
	ether 96:f0:d7:b5:4e:30
	nd6 options=201<PERFORMNUD,DAD>
	media: none
	status: inactive
en4: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
	options=400<CHANNEL_IO>
	ether 96:f0:d7:b5:4e:31
	nd6 options=201<PERFORMNUD,DAD>
	media: none
	status: inactive
en1: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
	options=460<TSO4,TSO6,CHANNEL_IO>
	ether 36:20:ab:96:8f:80
	media: autoselect <full-duplex>
	status: inactive
en2: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
	options=460<TSO4,TSO6,CHANNEL_IO>
	ether 36:20:ab:96:8f:84
	media: autoselect <full-duplex>
	status: inactive
bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
	options=63<RXCSUM,TXCSUM,TSO4,TSO6>
	ether 36:20:ab:96:8f:80
	Configuration:
		id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0
		maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200
		root id 0:0:0:0:0:0 priority 0 ifcost 0 port 0
		ipfilter disabled flags 0x0
	member: en1 flags=3<LEARNING,DISCOVER>
	        ifmaxaddr 0 port 8 priority 0 path cost 0
	member: en2 flags=3<LEARNING,DISCOVER>
	        ifmaxaddr 0 port 9 priority 0 path cost 0
	nd6 options=201<PERFORMNUD,DAD>
	media: <unknown type>
	status: inactive
utun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
	inet6 fe80::8282:1552:5ee8:7af5%utun0 prefixlen 64 scopeid 0xd 
	nd6 options=201<PERFORMNUD,DAD>
ap1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
	options=6460<TSO4,TSO6,CHANNEL_IO,PARTIAL_CSUM,ZEROINVERT_CSUM>
	ether 86:bb:c9:0f:bf:27
	nd6 options=201<PERFORMNUD,DAD>
	media: autoselect (none)
	status: inactive
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
	options=6460<TSO4,TSO6,CHANNEL_IO,PARTIAL_CSUM,ZEROINVERT_CSUM>
	ether 56:df:b9:cd:7d:03
	inet6 fe80::42e:99da:8d1f:5494%en0 prefixlen 64 secured scopeid 0xb 
	inet 192.168.0.3 netmask 0xffffff00 broadcast 192.168.0.255
	nd6 options=201<PERFORMNUD,DAD>
	media: autoselect
	status: active
awdl0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
	options=6460<TSO4,TSO6,CHANNEL_IO,PARTIAL_CSUM,ZEROINVERT_CSUM>
	ether 16:d2:56:82:ad:30
	inet6 fe80::14d2:56ff:fe82:ad30%awdl0 prefixlen 64 scopeid 0xe 
	nd6 options=201<PERFORMNUD,DAD>
	media: autoselect
	status: active
llw0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
	options=400<CHANNEL_IO>
	ether 16:d2:56:82:ad:30
	inet6 fe80::14d2:56ff:fe82:ad30%llw0 prefixlen 64 scopeid 0xf 
	nd6 options=201<PERFORMNUD,DAD>
	media: autoselect (none)
utun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
	inet6 fe80::c5d:a2:3940:520%utun1 prefixlen 64 scopeid 0x10 
	nd6 options=201<PERFORMNUD,DAD>
utun2: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 2000
	inet6 fe80::894d:d7f4:fe30:a184%utun2 prefixlen 64 scopeid 0x11 
	nd6 options=201<PERFORMNUD,DAD>
utun3: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1000
	inet6 fe80::ce81:b1c:bd2c:69e%utun3 prefixlen 64 scopeid 0x12 
	nd6 options=201<PERFORMNUD,DAD>
utun4: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
	inet6 fe80::7c06:f1c0:9bc8:481d%utun4 prefixlen 64 scopeid 0x13 
	nd6 options=201<PERFORMNUD,DAD>
utun5: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
	inet6 fe80::936a:e806:6558:15de%utun5 prefixlen 64 scopeid 0x14 
	nd6 options=201<PERFORMNUD,DAD>
utun6: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
	inet6 fe80::af7f:3531:1ba1:8998%utun6 prefixlen 64 scopeid 0x15 
	nd6 options=201<PERFORMNUD,DAD>
utun7: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
	inet6 fe80::b8a0:1b54:2dcb:fa9c%utun7 prefixlen 64 scopeid 0x16 
	nd6 options=201<PERFORMNUD,DAD>

  • loO : 루프백 인터페이스, 자신의 컴퓨터와 통신하는데 사용되는 가상의 인터페이스 (IP 주소 : 127.0.0.1)
  • en0 : Wi-Fi 인터페이스
    • ether 56:df:b9:cd:7d:03 : 맥북 Wi-Fi 인터페이스(랜카드) 자체의 고유한 MAC 주소
    • inet 192.168.0.3 : 사설 IP 주소
    • netmask 0xffffff00(255.255.255.0과 동일) : 서브넷 마스크
    • brodcast 192.168.0.255 : 브로드캐스트 주소
      • 서브넷 마스크가 255.255.255.0이기 때문에 192.168.0.0 ~ 192.168.0.254이라고 생각할 수 있으나 브로드캐스트 주소는 해당 네트워크 대역에서 모든 호스트에게 패킷을 전송하는 특별한 주소로, 네트워크의 마지막 IP주소이다.
      • 계산 과정으로는 네트워크 주소는 192.168.0.0이 되고, 브로드캐스트 주소는 192.168.0.255가 된다.
      • 사용 가능한 호스트 주소로는 192.168.0.1 ~ 192.168.0.254가 된다.
      • 네트워크 주소(192.168.0.0)와 브로드캐스트 주소(192.168.0.255)는 호스트로 사용할 수 없다.
  • networksetup -getInfo Wi-Fi 명령어와 ifconfig 명령어를 쳤을때 MAC 주소가 다르게 나온다 왜그런걸까 ?
    • ifconfig로 나온 MAC 주소는 내 맥북의 Wi-Fi 인터페이스(랜카드) 자체의 고유한 물리적 MAC 주소이다.
    • networksetup -getInfo Wi-Fi로 나온 MAC 주소는 현재 내 맥북이 연결된 Wi-Fi 공유기의 MAC주소이다.
    • networksetup -getInfo Wi-Fi 했을 때 결과
      1
      2
      3
      4
      5
      6
      7
      8
      
      IP address: 192.168.0.3
      Subnet mask: 255.255.255.0
      Router: 192.168.0.1
      Client ID:
      IPv6: Automatic
      IPv6 IP address: none
      IPv6 Router: none
      Wi-Fi ID: 84:94:37:e8:a8:63
      

13. NIC (Network Interface Card)

NIC는 Network Interface Card의 약자로, 네트워크 인터페이스 카드를 의미한다. 네트워크 인터페이스의 물리적인 형태라고 생각하면 된다.

  • NIC = 네트워크 인터페이스 카드 = 물리적 네트워크 인터페이스
  • NIC는 컴퓨터가 네트워크에 연결되어 데이터를 주고받을 수 있도록 해주는 하드웨어 장치이다. 컴퓨터 내부의 메인보드에 직접 장착되거나, USB 포트로 연결할 수 있다.

역할

  1. 물리적인 연결 제공
    • NIC는 네트워크 테이블(예:이더넷 케이블)을 연결하거나 무선 신호(예:Wi-Fi)를 수신/전송할 수 있는 물리적인 포트 또는 안테나를 제공
  2. 데이터 송수신
    • 컴퓨터에서 생성된 데이터를 네트워크를 통해 전송하고, 네트워크에서 받은 데이터를 컴퓨터가 이해할 수 있는 형태로 변환
  3. MAC주소 관리
    • 각 NIC는 고유한 MAC 주소를 가지고 있으며, 이 MAC 주소를 사용하여 네트워크 상에서 자신을 식별

종류

  1. 유선 NIC
    • 이더넷 케이블을 사용하여 네트워크에 연결하는 NIC이다.
  2. 무선 NIC
    • Wi-Fi 신호를 사용하여 네트워크에 연결하는 NIC이다.

예시

  1. 데스크탑 컴퓨터 뒷면에 있는 랜 포트
  2. 노트북에 내장된 Wi-Fi 어댑터
  3. USB 형태로 연결하는 랜카드
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.