나는 첫 번째 루아 dissector 시작 해요. 두 하드 코딩 된 이더넷 주소 사이에 페이로드 프로토콜이 실행 중입니다. 어떻게 해부도 내에서 정확한 비교를 할 수 있습니까? 사전 볼프강 R. (당신이 무슨 일을하는지 임) TvbRange에 ether()
를 호출루아 wireshark dissector : 이더넷 주소를 비교
0
A
답변
1
에서
if buf(0,6):ether() == ??? and buf(6,6):ether() == ??? then
...
덕분에 같은
이뭔가 다시 주소 객체를 제공합니다. 불행하게도 주소 개체는 그 자체로 유용하지 않습니다. 문자 집합을 얻기 위해 tostring(addr)
을 호출 한 다음 기대 한 것과 비교하는 것이 유일한 방법입니다. 이처럼 :
if tostring(buf(0,6):ether()) == "00:12:34:56:78:9a" then
-- do stuff
end
하지만 조심하는 한 가지가있다 : 당신의 Wireshark를 기본 설정 이름 확인을 사용하도록 설정되어있는 경우, 당신은 다시 얻을 문자열로 대체 이더넷 MAC 주소의 OUI 부분이있을 수 있습니다 그것은 지정된 조직/회사 이름입니다. 즉, "cisco : 56 : 78 : 9a"또는 그 무엇이든 될 수 있습니다.
최신 (야간) wireshark 1.11 빌드에서는 버퍼의 원시 문자열을 원시 루아 문자열로 가져올 수 있으며 이더넷 주소 (ASCII 문자가 아닌 이진 루아 문자열)와 비교하면됩니다. 또한 16 진수로 변환 할 수 있도록 16 진수로 변환 할 수있는 함수가 있습니다.
물론 다른 방법으로는 buf(0,2):uint()
및 buf(2,2):uint()
과 같은 각 바이트 또는 바이트 쌍을 가져올 수 있습니다. 그리고 buf(4,2):uint()
그리고 그냥 숫자로 비교하십시오.
관련 문제
- 1. 루아에서 Wireshark Dissector
- 2. Wireshark dissector errors Ubuntu
- 3. Wireshark tcap dissector 내 프로그램
- 4. Wireshark - Lise Dissector, 어떤 종단점이 연결을 열었습니까?
- 5. Wireshark Dissector : 누락 된 UDP 프레임을 식별하는 방법?
- 6. Wireshark 용 루아 : Tvp.new_real()이 존재하지 않습니까?
- 7. 루아 테이블 정렬 2 비교
- 8. Java를 사용하여 이더넷 주소를 어떻게 얻습니까?
- 9. 로컬 컴퓨터/이더넷 IP 주소를 변경하는 방법
- 10. PHP에서 IP 주소를 비교
- 11. Wireshark 저울 필터 결과
- 12. wireshark 개발 : 루아에서 다중 프로토콜로 발견 적 함수 등록하기
- 13. 정수 주소를 기반으로하는 비교 자
- 14. 두 3D 객체의 위치와 크기 비교. (루아)
- 15. Wireshark HTTP 요청
- 16. 루아에서 Wireshark 해부기구 - userdata
- 17. 레이어 2에 Wireshark 해부 체 추가하기
- 18. MacBookPro 및 Leopard 10.5.6과 함께 제공되는 유선 이더넷 인터페이스의 이더넷 MAC 주소를 스푸핑하는 방법은 무엇입니까?
- 19. Wireshark 루아 해부학자 재조합 - 이전 Tvb의 데이터와 함께 호출기가 호출되지 않음
- 20. Lua Wireshark Dissector에서 패킷 재구성
- 21. 루아 디시 전트에서 패킷을 복호화합니다.
- 22. 루아 : 루아
- 23. 루아 루아
- 24. 공개 IP를 통해 Arduino 이더넷 방패의 주소를 알고
- 25. 이더넷 주소에서 원격 호스트의 IP 주소를 얻는 방법은 무엇입니까?
- 26. WireShark 메시지
- 27. 이더넷 스위치 장치 드라이버
- 28. C에서 문자열 형식의 2 IP 주소를 비교
- 29. MySQL 성능 - 100Mb 이더넷 대 1Gb 이더넷
- 30. 루아