Wireshark — формат даты метки времени PCAP

Я читаю PCAP с tshark. В документации указано, что пакеты относятся к определенной дате (12 января).
При использовании Wireshark (используется на двух разных компьютерах) данные tshark и tcpdump относятся к 1 декабря, но того же года, поэтому мне кажется, что существует проблема с форматом данных (гггг/мм/дд и гггг/дд/мм) .
Возможно ли, что настройки моего компьютера испортили временную метку, отображаемую после прочтения pcap, или может быть проблема с документацией?

Формат отображения даты является настройкой локали для ОС или учетной записи и не имеет ничего общего с тем, что находится внутри файла pcap, а также с документацией. Поэтому проверьте настройки локали. Детали зависят от ОС, здесь ничего не известно, что вы используете.

Steffen Ullrich 20.04.2024 21:38

@SteffenUllrich, я использую формат дд/мм/гггг. У меня вопрос: может ли информация pcap о временной метке быть неверно истолкована из-за настроек моего компьютера? Я не знаю, как хранится эта информация.

eugenio b 21.04.2024 01:58

В pcap нет ничего, что можно было бы неправильно истолковать. Он просто дает количество секунд и микросекунд с момента 70/1/1 для каждого пакета. Ни часового пояса, ни локали. Это исключительно проблема с отображением.

Steffen Ullrich 21.04.2024 07:23

@SteffenUllrich, ок, временная метка pcap — это собственный магазин, соответствующий эпохе Unix. tshark показывает временную метку, равную 1 декабря, в то время как в документации указывается 12 января в качестве даты временной метки, поскольку временная метка PCAP отображается как эпоха unix, Wireshark не может неправильно интерпретировать временную метку из-за настроек компьютера (зона, локаль и т. д.). Я прав?

eugenio b 21.04.2024 13:23

Зона и локаль влияют на отображение времени, но это не «неправильная интерпретация», а ожидаемый результат. Если это не то, что вам нужно, вам необходимо соответствующим образом настроить параметры системы или приложения.

Steffen Ullrich 21.04.2024 13:27
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
5
150
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

поэтому временная метка pcap является собственным хранилищем эпохи Unix

Да. См. спецификацию pcap.

tshark показывает временную метку, равную 1 декабря, в то время как в документации указывается 12 января в качестве даты временной метки, поскольку временная метка PCAP отображается как эпоха unix, Wireshark не может неправильно интерпретировать временную метку из-за настроек компьютера (зона, локаль и т. д.).

Настройка часового пояса может влиять на отображение метки времени, но это очень странная настройка, которая может быть даже невозможна! - не должно иметь разницы в 43 дня.

Настройка локали не повлияет на то, как tcpdump, Wireshark или TShark отображают дату; они всегда отображают даты года/месяца/дня в формате ГГГГ-ММ-ДД, а не в формате ММ ДД ГГГГ или ММ-ДД-ГГГГ или ММ/ДД/ГГГГ или ДД ММ ГГГГ или ДД-ММ-ГГГГ или ДД/ММ/ГГГГ.

Вы можете попробовать запустить tcpdump с опцией -tt, выбрать «Просмотр» > «Формат отображения времени» > «Секунды с 1970-01-01» в Wireshark или запустить TShark с -t e. Это приведет к тому, что дата будет отображаться в секундах с начала эпохи UN*X. Попробуйте преобразовать это в дату и время; если в результате будут получены даты 1 декабря, а не 12 января, это означает, что даты в файле не 12 января.

Другие вопросы по теме

Похожие вопросы

Эксель | Вычисление разницы во времени (метка времени с использованием xx.xx.xx вместо xx:xx:xx)
Метод C# DateTime.Parse теряет наносекундную точность строки метки времени
Как я могу «сообщить» PostgreSQL, какой формат метки времени, когда я ВСТАВЛЯЮ текстовую строку, представляющую метку времени, в таблицу?
Записывает ли git местный часовой пояс в дополнение к местному смещению UTC для временной метки фиксации git?
Преобразование метки времени в дату в Oracle 19c без времени
Как найти дату начала по прошедшему времени в процентах и ​​дату окончания в Java
Как преобразовать временную метку в удобочитаемую строку времени (например, «минуту назад») в Java
Слева присоединиться к большому набору данных временных рядов, когда он находится в диапазоне меток времени в R
В Python объединить два итератора в зависимости от времени
JPA настраивает временную метку Postgres без часового пояса на часовой пояс сервера