작성
·
27
1
현재 선생님께서 알려주신 브로드캐스트 서버와 클라이언트의 신호를 주고받는 내용을 공부중입니다.
sock.sendto(message.encode(), ('192.168.58.255', port))로 일부러 잘못된 IP 주소를 입력하여 서버를 실행했는데 무엇때문인지 클라이언트 터미널에 Hello, Broadcast! 라고 수신이 되고 있습니다?.....
분명 강의에서(유니캐스트, 멀티캐스트, 브로드캐스트)의 17분 10초를 보시면 제대로 수신이 안 되는데 말이죠.... 이유를 모르겠습니다.
챗지피티에서는 브로드캐스트는 os와 네트워크 환경에 따라 "내 서브넷이 아닌 주소"는 필터링되거나 무시될 수 있어서 그런다고 하는데.... 왜 선생님은 되고 저는 안 되는건가요?..
답변 2
0
안녕하세요 kchkch2238님
먼저 질문 남겨주셔서 감사합니다.
질문을 요약해보면 "일부러 잘못된 IP 주소를 입력하여 서버를 실행하여 브로드캐스트 메세지를 보냈는데, 클라이언트가 수신을 하고 있다." 인 것 같은데요!
강의 내용을 먼저 살펴보면
17:04 쯤 멈추고 확인을 해보면, 제 ip는 "192.168.68.108" 인 것을 확인할 수 있습니다. (192.168.68.x 라는 점을 기억해 주세요!)
제 ip의 서브넷에 해당하는 "192.168.68.x"가 아닌, "192.168.58.255"로 브로드캐스트 메세지를 전송하고 있습니다. (즉 68이 아닌 58)
따라서, 정상적으로 "Hello, Broadcast!" 메세지가 클라이언트에서 수신이 안 됨을 확인할 수 있습니다. (다른 서브넷으로 보내고 있기 때문에)
kchkch2238님의 질문에 답변을 드리면, 아래와 같은 가능성이 있을 것 같은데요.
아마 당시 테스트를 하셨을 때, kchkch2238님의 ip를 확인해보면 (ifconfig 또는 ipconfig와 같은 명령어로 확인), 아마 192.168.68.x 대역의 ip를 가지고 있었기 때문에 정상적으로 메세지를 수신할 수 있었던 것으로 보입니다.
192.168.68.x 대역의 ip가 아닌 경우에는, 홈 네트워크 (공유기) 상에서 해당 메세지를 kchkch2238님의 클라이언트로 전송을 했을 수도 있구요! (어떤 이유에서인지는 모르겠지만, 다른 private ip가 발견된 경우 (평소에는 이런 경우가 없기 때문에), 사용자의 오류로 판단하여 이를 정상 ip로 수정을 했을 가능성)
kchkch2238님의 클라이언트가 promiscuous mode 로 설정이 되어 있어서, 모든 메세지를 수신하고 있는 상태일 수도 있습니다!
가장 정확하게 원인을 진단하려면, 다음과 같은 정보를 포함하여 댓글을 남겨주시면 좋을 것 같습니다!
현재 나의 ip
테스트 당시의 wireshark 캡쳐본 (17:10초와 같은 형태로, Source ip, Destination ip가 다 나오도록)
테스트 당시의 테스트 코드
감사합니다.
0
안녕하세요, 인프런 AI 인턴입니다. kchkch2238님.
브로드캐스트 통신에서 경험하신 문제는 네트워크 환경의 차이로 인해 발생할 수 있습니다. 일반적으로 브로드캐스트는 동일한 서브넷에서 모든 디바이스와 통신할 수 있도록 설계되어 있으며, 일부 네트워크 환경에서는 필터링이 적용될 수 있습니다. 다음은 관련된 몇 가지 포인트입니다:
브로드캐스트 주소 설정: 브로드캐스트 메시지는 특별한 주소(192.168.58.255
처럼)를 사용하여 네트워크 내 모든 호스트에게 패킷을 보냅니다. 이렇게 잘못된 IP 설정에서도 메시지가 수신된다는 것은 네트워크 구성에 영향받을 가능성이 높습니다. 특히 로컬 네트워크 구조나 OS의 방화벽 설정이 이를 허용할 수 있습니다.
강의 내용과의 차이: 강의에서 제대로 수신되지 않았다면, 이는 강의를 촬영한 환경과 현재 환경 간의 차이에서 발생할 수 있습니다. 강의에서는 특정 상황에서 차단되었던 패킷이 실제로는 네트워크 설정이나 운영체제 정책에 따라 다르게 동작할 수 있습니다.
네트워크 환경 차이: 새로운 운영체제나 네트워크 장치, 라우터 설정에 따라 브로드캐스트 패킷의 처리 방식이 다를 수 있습니다.
이러한 상황은 실제 네트워크 설정에 따라 다르게 작동할 수 있습니다. 따라서 아래 링크를 통해 관련 내용을 더 잘 이해할 수 있는 유사한 질문을 참고하시길 바랍니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.