2012-04-21 2 views
3

저는 Python과 그의 파트너 인 Scapy로 프로그래밍 중입니다. 나는 그것이 ARP 프로토콜이나 다른 문제에서 정상적인 행동인지 모른다. (1) 다른 VM 머신에 "ARP 요청"을 보내

스푸핑 MAC 주소 통신의 동작

1 VM이 기계 (2) 스푸핑 소스 MAC 주소 필드 (Scapy 생성 :

나는이 시나리오를).

2-은 VM 기계 (2)는 소스 MAC 주소 필드와 "ARP 요청"스푸핑이 있다는 "ARP의 응답"으로 응답하도록 수신한다. 이상한 부분은 VM 기계 (1)가 그것을 수신한다는 것입니다.

참고 : 나는 첫 번째 패킷 (ARP 요청)가 VM 머신 (2)에 가도록 와이어 샤크와 함께 확인했다 소스 MAC 주소 필드와는 정말 스푸핑. 그리고 네트워크 인터페이스의 promiscous 모드가 비활성화되어 VM 시스템은 실제로 인터페이스로 향하는 패킷 만 수신합니다.

그래서, 내 질문 :

A)가 ARP 프로토콜의 정상적인 동작인가?

b) VM 기계 (1) 다른 MAC 주소가 응답 패킷이 목적지 필드에서 다른 MAC 주소 (하여 VM 기계 (2)로부터 송신 방법 인터페이스 (진짜)에 배치했기 때문에 네트워크 상에 존재하지도 않는다)는 VM machine (1)에 도착하고 유효한 "ARP Reply"와 같이 VM machine (1)에 의해 효과적으로 처리된다.

+0

ARP 캐싱에 대해 이야기하고 있습니까? 기계가 ARP 응답 (목적지가 아님)을 받으면 로컬 캐시에 ARP 응답을 캐시합니다. 결국 누군가가 "00-1F-29-52-E7-81이 1.1.1.1에있다"고 발표하면 arp 엔트리 매핑 1.1.1.1 -> 00-1f-29-52-e7-81을 추가하는 것이 좋습니다. –

+0

또한 브로드 캐스트 주소로 보내지는 vm machine 2에서 VM machine 1까지의 다른 패킷이 있는지 확인할 수 있습니까? VM 기계 1은 ARP 알림을 보낼 수 있습니다 (무차별 모드가 비활성화 된 인터페이스에서도 수신 됨). –

+0

안녕하세요, David 님, 제가 예시 할 것입니다 (** 패킷 1 - 요청 **) - 누가 IP 192.168.2.2를 가지고 있습니까? - 소스 MAC 주소 : 22 : 22 : 22 : 11 : 11 : 11 (스푸핑 됨) - 대상 MAC 주소 : ff : ff : ff : ff : ff : ff (브로드 캐스트) ******** (* 패킷 2 - Reply *) - IP 192.168.2.2는 44 : 44 : 44 : 44 : 44 : 44 - 발신 MAC 주소 : 44 : 44 : 44 : 44 : 44 : 44 - 대상 MAC 주소 : 22:22 : 22 : 11 : 11 : 11 (스푸핑 된) **** 질문 : 패킷에 VM에 구성된 실제 MAC 주소가 아닌 가짜 대상 MAC 주소가 들어있는 경우 Packet2 (응답)가 VM 컴퓨터 (1)로 돌아 오는 방법 machine (1)의 네트워크 iface? – StarkBR

답변

0

내가 여기에있는 ARP 답글 VM에 반등 어떻게 스푸핑 된 MAC 주소를 사용하지만 (1) ..

글쎄, VM (2)의 ARP 테이블을 확인하려고 그 이상한 것은 VM (1)에 대해 보유한 MAC 레코드를 확인합니다. 아마도 MAC 주소를 스푸핑하기 전에 일부 통신으로 인해 합법적 인 MAC 주소가 캐시 된 것을 알 수 있습니다.

+0

나는 그것을 만들었다. VM (2)의 ARP 테이블은 스푸핑 된 IP를 표시하고 스푸핑 된 MAC을 참조합니다. 따라서 VM (1)의 실제 MAC은 VM (2) ARP 테이블에도 존재하지 않지만 ARP 응답은 대상 (위)에 스푸핑 된 MAC 주소로 VM (1)에 도착한다는 것을 기억하면서 VM 들. – StarkBR

+0

VM (1)에서 실제 MAC에 대한 참조가 없지만 ARP 응답은 여전히 ​​VM (2)에 의해 VM (1)로 다시 전송됩니다. – StarkBR

+0

그렇다면 사용하는 가상화 소프트웨어는 무엇이며 어떤 유형의 가상 네트워크를 구현합니까? – MYZ