255.255.255.255 대 192.168.1.255 프로그램을 디버깅하려고합니다. 브로드 캐스트 주소 255.255.255.255와 ifconfig에 의해보고

브로드 캐스트를 수행하는 일부 응용 프로그램을 디버깅하려고합니다.

브로드 캐스트 주소 255.255.255.255와 ifconfig에 의해보고 된 바와 같이 Bcast : 192.168.1.255의 차이점은 무엇입니까?



답변

브로드 캐스트 주소는 항상 주어진 네트워크에 상대적이며 브로드 캐스트 자체 는 없습니다 . 네트워크가 있으면 모든 호스트 비트를 1로 바꿔 브로드 캐스트 주소를 계산할 수 있습니다. 간단히 말해, 브로드 캐스트 주소는 네트워크에서 가질 수있는 가장 높은 번호의 주소이고, 네트워크 주소는 가장 낮은 주소입니다 (모든 호스트 비트는 0으로 설정 됨). 그렇기 때문에 둘 중 하나를 실제 호스트 주소로 사용할 수 없습니다.이 용도로 예약되어 있습니다.

네트워크가 192.168.1.0/24이면 네트워크 주소는 192.168.1.0이되고 브로드 캐스트 주소는 192.168.1.255가됩니다.

네트워크가 192.168.0.0/16이면 네트워크 주소는 192.168.0.0이며 브로드 캐스트 주소는 192.168.255.255입니다.

등등…

255.255.255.255는 “이 네트워크”를 의미하는 특수 브로드 캐스트 주소입니다. 실제로 주소를 신경 쓰지 않고 연결된 네트워크에 브로드 캐스트 패킷을 보낼 수 있습니다. 여기서 “로컬 호스트”를 의미하는 가상 주소 인 127.0.0.1과 유사합니다.

자세한 정보는 여기 : http://en.wikipedia.org/wiki/Broadcast_address


답변

Massimo가 그의 답변에서 언급 한 내용에 추가하려면 :

255.255.255.255는 물리 계층 브로드 캐스트 주소로 간주되고 192.168.1.255는 네트워크 계층 브로드 캐스트 주소로 간주됩니다. ARP는 물리 계층 브로드 캐스트를 생성하는 반면 NetBIOS는 네트워크 계층 브로드 캐스트를 생성합니다.


답변

원칙적으로 255.255.255.255는 “전역”브로드 캐스트 주소입니다. 즉, IP 스택은 모든 네트워크 인터페이스로 패킷을 보내야하며 브로드 캐스트를 전달하도록 구성된 라우터는이를 보내야합니다.

실제로는 브로드 캐스트를 전달하는 라우터가 거의 없으며 많은 스택이 기본 경로가 가리키는 인터페이스로 패킷의 사본 하나를 전송하기 만하면됩니다.

서브넷 브로드 캐스트 주소는 특정 인터페이스를 선택하는 데 사용됩니다. 두 경우 모두 네트워크 계층 브로드 캐스트 주소 (이더넷의 경우 FF : FF : FF : FF : FF : FF)에 매핑되어야합니다.

일반적으로 기본 경로가있는 인터페이스가 잘못 선택된 여러 설정이 있으므로 255.255.255.255를 사용하는 것은 좋지 않습니다. 인터페이스를 명시 적으로 선택하는 것이 좋지만 신중하게 수행해야합니다.

내 다른 제안은 응용 프로그램에 적합한 경우 멀티 캐스트를 사용하는 것입니다. 브로드 캐스트 트래픽과 동일한 경고가 계속 적용되지만 관심없는 호스트가 패킷을 빠르게 식별 할 수 있으며 네트워크 관리자가 프로토콜에 대한 특정 전달 규칙을 설정할 수 있습니다.