이더넷 / MAC 주소가 필요한 이유는 무엇입니까?


16

이더넷 MAC 주소가 왜 필요한지 모르겠습니다. 모든 컴퓨터가 통합 네트워크에 연결되어 있고 IP 주소를 사용하여 통신 할 수는 없습니까?

예를 들어 이더넷에는 다음과 같은 메커니즘이 있습니다.

  1. IP와 컴퓨터 192.168.1.1( X.1)에 패킷을 보내려고 192.168.1.2( X.2)
  2. X.1 ARP를 사용하여 MAC X.2
  3. 그렇게하려면 X.1네트워크의 모든 컴퓨터에 패킷을 보내야합니다. 오직 하나만 대답 할 것이다
  4. X.1 MAC을 가져와 패킷을 보냅니다.

한 단계 만 수행하는 것이 더 간단하지 않습니까?

  1. X.1네트워크의 모든 컴퓨터에 패킷을 보냅니다. 단지 X.2그것을 처리 할 것, 다른 사람을 무시합니다

모든 장치에 고유 한 MAC 주소가있는 경우 IP 주소가 필요한 이유는 무엇입니까?


컴퓨터는 데이터를 무시해야한다는 것을 어떻게 알 수 있습니까? MAC 주소가 없으면 네트워크에서 어떤 주소를 처리해야하는지 알 수 없습니다.
Bakuriu

1
그들은 대신에 MAC 주소의 IP 주소를 사용할 수 있습니다
user2449761

erm ... computer <-> IP 주소는 인젝 티브 매핑 이 아닙니다 . 나는 내 질문을 다시 말할 것이다 : 컴퓨터는 데이터를 무시해야한다는 것을 어떻게 알 수 있는가? MAC 주소가 없으면 네트워크에서 어느 것을 처리해야하는지 알 수 없습니다. 둘 이상의 IP가 동일한 IP를 가질 수 있기 때문입니다 .
Bakuriu

4
동일한 서브넷에서 동일한 IP를 가져서는 안됩니다 ... 이것은 충돌입니다
user2449761

1
보완적인 질문은 serverfault.com/q/410626/102768
OrangeDog

답변:


31

다른 네트워킹 레이어 들이 서로 다른 기술을 위해 교환 할 수 있도록이 있습니다.

여기서 이야기하는 두 계층은 계층 2와 3입니다.이 시나리오에서 계층 2는 이더넷입니다. MAC 주소가 발생하고 계층 3은 IP입니다.

이더넷은 브로드 캐스트 네트워크 "데이터 링크"에 연결된 네트워크 장치간에 로컬 수준에서만 작동하는 반면 IP는 라우팅 가능한 프로토콜이므로 원격 네트워크의 장치를 대상으로 할 수 있습니다.

이들 각각의 요구 사항은 다릅니다. 이더넷은 네트워크 장치간에 패킷을 송수신 할 수있는 기술 제품군을 지정하는 반면, IP는 데이터 패킷이 여러 네트워크를 통과 할 수있는 프로토콜을 정의합니다.

네트워킹에 유연성을 부여하는 것도 다른 것에 의존하지 않습니다. 예를 들어, IP over Ethernet을 사용하여 인터넷 서비스에 연결하도록 선택할 수 있지만 내부 네트워크에서는 IP over ... 용지를 사용하도록 선택할 수 있습니다. 누군가가 각 패킷의 내용을 기록하고 물리적으로 다른 기계로 가져 와서 입력하는 경우 분명히 빠르지는 않지만 IP 라우팅 규칙과 관련하여 종이 조각을 들고 다니는 사람에게는 여전히 IP가됩니다.

실제로는 서로 다른 두 가지 프로토콜을 사용하고있는 다른 데이터 링크 프로토콜이 있습니다 (주소 지정 체계는 동일하지만 802.3-이더넷 및 802.11-wifi).

IP는 기본 계층이 무엇인지 상관하지 않습니다.

마찬가지로 IP를 다른 네트워크 계층 프로토콜로 교환 할 수 있습니다 (모든 참가자에게 제공되는 경우). ATM 과 같은 .

계층 2와 계층 3을 모두 포함하는 프로토콜의 작성을 직접적으로 방해하는 것은 없지만, 유연성이 떨어지고 매력적이지 않으며 사용되지 않을 것입니다.


2
내부 네트워크의 경우 RFC1149를 사용해야 합니다. (덜 기술 설명 )
스콧 체임벌린

2
핸드 시그널 플래그를 사용하는 것과 같은 것 ?
Scott Chamberlain

1
@ ScottChamberlain : 나는 손 신호 플래그 하나에서 ASCII 예술을 좋아합니다!
Fred Larson

5
IPoAC는 내부 통신에 적합하지 않습니다. 비둘기는 실내보다 실외에서 더 잘 작동합니다
cpast

2
@ user2449761 사람들은 바보 같은 것만 나열했습니다. 이더넷 대신 블루투스, 전화 접속, GPRS, LTE, USB, DSL, 토큰 링 등을 사용할 수 있습니다.
OrangeDog

8

패킷을 처리할지 또는 무시할지에 대한이 결정은 어디에서 수행됩니까? 어떤 대답도 실제로 만족스럽지 않습니다.

1) 스위치에서? 이는 스위치가 어떤 컴퓨터가 어떤 패킷에 관심이 있는지 결정하는 모든 프로토콜을 이해해야한다는 것을 의미합니다. 이렇게하면 스위치 비용이 증가하고 속도가 감소 할뿐만 아니라 IP 프로토콜의 변경 사항을 적용하기가 훨씬 더 어려워집니다.

2) 이더넷 인터페이스의 하드웨어에서? 글쎄, 이것은 모든 데이터 패킷이 모든 머신으로 이동해야하므로 네트워크 속도가 훨씬 느려질 것입니다. WiFi 및 브리지가 느린 브리지 네트워크와 같은 기술은 불가능합니다. 서로 다른 속도로 이더넷을 실행하는 것은 불가능합니다. IPv6 또는 IP 멀티 캐스트와 같은 기술은 모든 이더넷 엔드 스테이션에 배치하기 위해 하드웨어 변경이 필요합니다.

3) 소프트웨어에서? 따라서 훨씬 많은 수의 네트워크 인터페이스 인터럽트를 처리해야하므로 컴퓨터 속도가 훨씬 느려집니다. 위에서 언급 한 모든 브리징, VPN 및 Wifi 문제도 문제입니다.

이 모든 것들은 IP없이 이더넷을 사용할 수 없게하므로 IP를 변경하기 위해서는 이더넷을 변경해야합니다. 왝.

우려의 분리가 좋습니다.


또한 전체 네트워크 성능을 크게 저하시킬 수 있습니다. 옵션 3의 경우 1GBit 네트워크를 포화시키는 거대한 파일을 보내고 갑자기 네트워크의 다른 모든 사람들도 해당 파일을 가져 와서 무시해야하며 파일이 아닌 다른 사람에게 파일을 보낼 대역폭이 없습니다. 현재 파일 전송
PlasmaHH

두 번째 옵션은 이더넷 작동 방식을 설명하지 않습니까? 모든 인터페이스는 동일한 패킷을 가져 오지만 하나의 시스템 만 무시하지 않습니다 (무차별 모드의 경우 제외). 스위치 속도가 빨라집니다 ...
user2449761

2
@ user2449761 스위치 대신 허브가있는 고대 네트워킹 하드웨어를 사용하는 경우 모든 패킷은 모든 컴퓨터로만 전달됩니다. 허브는 원래 비용상의 이유로 옵션이었습니다. 그러나 이제는 스위치가 저렴하여 더 이상 사용하지 않습니다.
Dan 님이 Firelight 님에 의해 Fiddling

@Dan

2
옵션 1이 이미 진행 중입니다. 적어도 아직 MAC 주소 사용을 대체하지는 않습니다. 그러나 일부 스위칭 하드웨어는 대상 MAC 주소를 사용하거나 대상 IP 주소를 사용하여 발신 인터페이스를 선택하도록 구성 할 수 있습니다. 10 년 또는 20 년 동안 MAC 주소는 기록 목적으로 만 유지 될 수 있으며 모든 패킷 라우팅은 IP 주소 만 기반으로 수행됩니다. 백본 라우터가 하드웨어의 대상 IP 주소를 기반으로 몇 년 동안 라우팅되어 왔기 때문에 배포하기 어려운 IP 변경에 대한 부분은 피할 수 없었습니다.
kasperd

3

IP 주소 및 MAC 주소는 인터넷 프로토콜 제품군 의 다른 계층에서 작동합니다 . MAC 주소는 계층 2에서 동일한 브로드 캐스트 네트워크 내에서 시스템을 식별하는 데 사용되는 반면 IP 주소는 계층 3에서 서로 다른 네트워크에서 시스템을 식별하는 데 사용됩니다.

컴퓨터에 IP 주소가 있더라도 모든 계층에서 기본 계층을 사용하므로 동일한 네트워크에서 다른 시스템을 찾으려면 여전히 MAC 주소가 필요합니다. 앞에서 언급 한 페이지에서 프로토콜 스위트를 자세히 설명하는 멋진 다이어그램을 찾을 수 있습니다.


2

정체 문제는 이더넷 네트워크의 크기가 커짐에 따라 직면합니다. 이로 인해 네트워크가 질식되고 지연이 발생할 수 있습니다. 이것이 서브넷 개념을 가져 오는 요인 중 하나입니다. 그러나 서브넷을 사용하면 한 서브넷의 시스템에서 다른 서브넷의 시스템으로 패킷이 이동할 수 있도록 라우터라는 추가 엔티티가 필요합니다.

이더넷 케이블이 사용하는 거리는 전송이 특정 제한을 초과 할 경우 전송 성공을 제한 할 수 있으므로 또 다른 주요 관심사입니다. 이것은 허브 / 중계기 형태의 새로운 엔티티를 가져 왔습니다.

모든 통신 메커니즘이 통신에 MAC 주소를 사용하지는 않습니다. PPP & HDLC는 식별을 위해 MAC 주소를 사용하지 않습니다.

또한 일부 네트워크는 이더넷을 사용하지 않습니다. 토큰 링 네트워크에는 다른 데이터 링크 계층이 필요합니다.

네트워크 B에서 장치의 mac 주소를 통해 주소를 지정하여 네트워크 A에서 네트워크 B의 장치로 패킷을 보내면 네트워크 A 자체에서 삭제됩니다. 네트워크 A와 네트워크 B 사이에 라우터가 있더라도 라우터는 Mac 주소로 주소 지정된 IP 주소는 다른 패킷을 수신하여 라우터가 작동함에 따라 패킷을 삭제합니다.

위의 시나리오에서 인터넷은 다양한 로컬 / 개인 네트워크로 인해 플랫 네트워크가 아니라는 것이 매우 분명합니다. 소스와 대상 사이에는 다양한 네트워크 엔터티가 있습니다.

인터넷은 플랫 네트워크가 아니므로 모든 유형의 통신에 MAC 주소가 사용되지 않으며 일부 네트워크는 이더넷 이외의 다른 데이터 링크 계층을 필요로하므로 노드의 위치와 관계없이 원하는 노드로 라우팅하기 위해 IP 주소가 필요합니다 네트워크 계층으로 달성됩니다.

또한 /programming/26290069/arp-vs-ip-why-do-we-need-both 에서 비슷한 토론을 참조하십시오.


대안적인 층 2의 "조류 운반체", "손 신호"및 "종이 및 연필"의 예 이외에, 일부는 엉뚱하지만 때때로 유용한 것들이있다 . SMS, Facebook 또는 이메일을 통한 IP 그런 다음 이전 대기 SLIP, PPP 및 PPPoE가 있습니다. 이 세 가지는 이더넷 또는 WIFI 연결과 같은 종류의 얼굴을 나타내지 않지만 모든 IP를 통과하고 완전히 라우팅 할 수 있습니다.
Ross Presser

2

다른 사람들이 설명했듯이 로컬 네트워크의 혼잡 제어를 위해 레이어 2 프로토콜이 필요합니다. 계층 3은 네트워크 간 라우팅 및 주소 지정에 사용됩니다.

그러나 올바른 질문은 다음과 같습니다. 왜 두 레이어가 동일한 주소 지정 체계를 사용할 수 없습니까?

첫 번째 답변 : 다른 사람들이 언급했듯이 L2 및 / 또는 L3 기술을 전환 할 수 있으며 모든 것이 여전히 작동합니다.

두 번째 답변 : 모든 사람이 계층 2 프로토콜이 IP 주소를 사용하도록 동의하더라도 계층 2와 계층 3에 각각 하나씩 두 개의 IP 주소를 사용해야합니다. 왜 그렇습니까? 내팅. 컴퓨터에 공용 IP 주소가 있으면 L2 및 L3 주소가 동일 할 수 있습니다. 그러나 NATting을 사용하면 L2 및 L3 주소가 달라집니다.

마지막 의견 : 모든 사람이 메시지를 받고 수신자가 아닌 사람들이 메시지를 무시한다고 말하면 WiFi에 대한 것입니다. 유선 이더넷은 더 이상 그렇게 작동하지 않습니다. 동축 케이블을 사용할 때와 나중에 허브를 사용할 때와 같았습니다. 스위치는 메시지 / 패킷 만 해당 포트로 전송합니다 (단, 공격을 수행하고 테이블을 포화시키지 않는 한).


마지막 의견을 추가하게되어 매우 기쁩니다. 지적했듯이 스위치로 혼잡을 관리 할 수 ​​있습니다. 스위치는 IP 주소 지정 체계 만 사용할 수 있습니다. 또한 NATing 인수를 이해하지 못합니다. NAT의 양쪽에 항상 두 개의 IP 주소가 필요합니다. 유효한 질문은 현대 네트워크에서 왜 별도의 DataLink와 네트워크 계층이 필요한가?라고 생각합니다. 토큰 링, 비둘기, 종이가 사용 된 70 년대에는 분리가 필요하다는 것을 알고 있습니다.
user2449761

0

MAC 주소와 IP 주소는 다른 목적을 위해 다른 네트워크 계층 에서 작동 합니다. 레이어 중 하나를 제거하면 문제가 발생하거나 혼동을 일으키거나 작동하지 않을 수 있습니다.

IPX 만하는 고대 하드웨어 (예 : 백만 달러 CNC 선반)가 있다고 가정 해 봅시다 . IP 전용 네트워크에서 누구나 어떻게 대화 할 수 있습니까? 또는 구성되지 않은 컴퓨터를 새 네트워크에 연결한다고 가정하십시오. MAC 주소가없는 경우 DHCP 서버 가 컴퓨터에 사용할 IP 주소를 어떻게 알 수 있습니까?

백본 스위치에 4 ​​기가비트로 연결된 서버가 있고 단일 가상 연결로 집계 되어 있다고 가정 해 보겠습니다 . MAC 전용 네트워크에서 내 서버의 주소는 무엇입니까? 또는 PPPoA 모뎀을 통해 연결된 컴퓨터 가 있고 MAC 주소가 없다고 가정하십시오. 누구나 어떻게 연결할 수 있습니까?


0

흠 나는 이것이 작동하도록 만들 수 있다고 생각한다. 그러나이 작업이 완료되면 IPv6 용 새 하드웨어를 구입해야했으며 중복되지 않았을 것입니다. 그래서 나는 결과를 좋아하지 않습니다.


0

I IP에서는 의미 인터 프로토콜.

IP는 전 세계 모든 네트워크에서 고유해야합니다.

IP 주소는 문자 그대로 글로벌 주소 여야합니다. 트래픽을 9.9.9.9로 보내면 전 세계 어디에서 9.9.9.9가 물리적인지 또는 어떤 네트워크 9.9.9.9가 물리적인지에 관계없이 9.9.9.9가 어디든지 도달해야합니다.

TCP / IP가 발명되었을 때 NAT는 원래 계획의 일부가 아니 었으며 IPv6이 필요하지 않은 곳에서 더 널리 퍼질 때까지 "해킹"입니다. NAT는 이해하기 위해 존재하지 않습니다. 이 답변.)

MAC 주소는 호스트가있는 로컬 네트워크에서만 고유해야합니다. 동일한 로컬 네트워크에없는 것과의 통신을 허용하도록 설계되지 않았습니다. 따라서 MAC 주소에는 물리적 제한이 있지만 IP 주소에는 제한이 없습니다.

TCP / IP는 다음과 같은 개념을 기반으로합니다.

  • 라우터가 관여하지 않아도 시스템이 서로 직접 통신 할 수있는 로컬 네트워크가 있습니다
  • 때로는 한 네트워크의 컴퓨터가 다른 네트워크의 컴퓨터와 통신하기를 원하기 때문에 라우터가 필요합니다.

위의 두 가지 개념이 적용되지 않는 다른 기본 메커니즘이 존재하면 IP와 MAC이 현재 필요하지 않을 것입니다.

동일한 로컬 네트워크 외부의 시스템과 통신 할 필요가없는 프로토콜이나 다른 것을 설계하는 경우 MAC 주소 만 사용하는 것이 좋습니다. ATA over Ethernet 프로토콜은 보안 목적으로 인터넷이 아닌 동일한 네트워크에서 ATA 드라이브를 공유 할 수 있도록 설계 되었기 때문에 이와 같습니다.


0

방금 비슷한 생각을했습니다. 그러나 MAC 계층이 필요하다는 것을 깨달았습니다. 전환 목적으로도!

피할 수없는 문제는 IP 프로토콜 외에 다른 IP 주소를 가지고 있다는 점입니다. IP에 대해 이야기하더라도 IPv4와 IPv6이 있습니다. 네트워킹 장치는 어떤 장치인지 어떻게 알 수 있습니까? 따라서 부트 스트랩 레이어로 MAC이 필요합니다. 그 프로토콜 필드의 다음 필드는 MAC을 통해 무엇이 전달되는지 알려줍니다.


-2

단일 OSI 계층 만 생각하면 문제가 발생합니다. 트래픽을 전달하는 물리적 와이어가 있기 때문에 이더넷 만 존재하는 것과 동일한 방식으로 이더넷 (및 기타)이 존재하기 때문에 IP 만 작동합니다. "IP 또는 MAC" 이 아닙니다. 트래픽 라우팅 에는 MAC 주소가 작동해야합니다. IP 기술 (및 기타 관련 기술과 관련이없는 기술)이 그 위에 있습니다. 단순히 서로 교환 할 수는 없습니다.


-6

동적 IP 내 친구! 지역 환경 (집, 대학, 직장)에 네트워크 설정이 있습니다. 인터넷에 직접 연결되지 않고 (대문자 'I'로) 라우터를 통해 연결합니다. 이 라우터는 ISP로부터 동적 IP (대부분의 경우 정적 IP가없는 경우)를 가져 와서 연결된 모든 컴퓨터에 동적 (위와 같은 '그러나') 주소를 할당합니다. 왜 그런 식으로 이루어 집니까? 한 줄에, 당신이 가진 IP보다 더 많은 사용자에게 서비스를 제공합니다. 문제는 다른 모든 컴퓨터에서 MacBook Pro (: D)를 식별 할 수 있어야하므로 동적 / 공유 주소가 아닌 고유 한 주소가 필요하다는 것입니다. 당신의 맥입니다. 그리고 그것이 필요한 이유입니다.

여기서 더 읽을 수 있습니다


2
MAC 주소를 사용해야 할 이유는 없습니다.
Daniel B

1
요점은 : 모든 컴퓨터에 고유 한 IP 주소가있는 것은 아니며 때로는 원치 않는 경우도 있으므로 별도의 LAN 주소를 갖는 것이 좋습니다. 이는 MAC 주소입니다.
reinierpost

1
그렇습니다. 인터넷 라우팅이 가능한 모든 것은 정의에 따라 고유하게 주소를 지정할 수 있습니다. 그렇지 않으면 인터넷이 작동하지 않습니다. 이러한 엔드-투-엔드 원칙을 위반하는 NAT와 같은 것들이 있습니다. NAT의 경우 별도의 LAN 주소도 있습니다.
Daniel B

@DanielB 나는 그것이 사실이 아니라고 확신하지만, 아마도 당신을 오해 할 것입니다. 예를 들어, 이전에 연결되지 않은 로컬 개인 네트워크에있는 입력중인 PC를 어떻게 고유하게 처리 할 수 ​​있는지 알려줄 수 있습니까? 대신이 컴퓨터 옆에있는 컴퓨터를 처리하려면 어떻게해야합니까?
SevenSidedDie

@DanielB 확실히 이유가 아닙니다. OP의 질문 : 모든 컴퓨터가 통합 네트워크에 연결되어 있고 IP 주소를 사용하여 통신 할 수는 없습니까? 내 대답은 "질문은 왜 이더넷 모델에 MAC 주소를 사용 하는가?"라는 가설에 대한 질문이 아니라 질문 에 대한 정보를 제공 하는 것입니다. 그 이후 / 그녀는 우리가 할 수없는 이유에 대해 질문입니다 IP를 사용, 내 대답이있다. 다음 시간 : downvoting하기 전에 carefuly 읽어 보시기 바랍니다
tfrascaroli
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.