내 운영 체제는 Linux+QT를 사용합니다.
이것이 내가 직면한 문제입니다.
내 LAN IP 주소는 이고 172.16.120.17
Wi-Fi IP 주소는 입니다 172.16.120.20
.
그래서 나는 그들이 동일한 네트워크 세그먼트에 있다고 생각합니다.
그런 다음 eth0을 사용하여 해당 주소를 핑합니다.
그리고 그것은 완벽하게 작동합니다.
하지만 아래 명령과 같이 wlan0을 사용하여 핑하면.
ping -I wlan0 xxx.xxx.xxx.xxx
해당 주소로 핑을 보낼 수 없습니다.
몇 가지 테스트를 거친 후 eth0을 끄면 예상대로 Wi-Fi 핑이 발생하는 것으로 나타났습니다. (저는 아래 명령어를 사용하고 있습니다)
ifconfig eth0 down
Wi-Fi와 LAN이 서로 다른 네트워크 세그먼트에 있는 경우 Wi-Fi와 LAN 모두 예상대로 핑할 수 있습니다.
왜 이런 일이 발생하며 어떻게 해결합니까?
아니면 이게 정상인가요?
먼저, 감사합니다!
답변1
인터페이스를 지정하는 것만으로는 충분하지 않으며 소스 IP도 지정해야 합니다. ping에 대한 매뉴얼 페이지를 참조하십시오.
인터페이스는 주소 또는 인터페이스 이름일 수 있습니다. 인터페이스가 주소인 경우 소스 주소를 지정된 인터페이스 주소로 설정합니다. 인터페이스가 인터페이스 이름에 있는 경우 소스 설정
귀하의 핑은 eth0의 소스 IP에서 나올 가능성이 높으며 이로 인해 혼란이 발생할 수 있습니다.