When a network disconnect occurs, it can affect the functionality of various applications and services that rely on a stable network connection. By being aware of these disconnects, We can precisely identify where and when the issues are happening, which helps in narrowing down potential causes. This targeted approach allows for quicker and more effective resolution of problems, ensuring that the overall performance and reliability of network-dependent applications and services are maintained.
Whenever you see logs on your trading platform indicating a network disconnect, you should check if the network adapter of your server has been disconnected from the internet. This disconnection can cause your trading platform to lose communication with your broker’s server, leading your algorithm to fail in closing or opening trades.
If your server did not reboot (all applications are running), yet your trading platform logs show a network disconnect, you need to determine the cause of the disconnect. To do this, check the Event Viewer on your server. This will help you identify whether the disconnection was due to the server’s network losing internet connection or if it was an issue between your trading platform and your broker’s server.
To check for network disconnect, follow the steps below:
1
Open the Event Viewer by typing Event Viewer in the Windows search bar.
2
In the right pane, click on Create Custom View
3
In the Create Custom View dialog box, click to check the Warning and Information boxes.
4
Ensure that the By log is selected and then click the Event Logs drop down box and click to check the Windows Log and Applications and Services Logs boxes.
5
In the Event ID text box, enter 27 and 10000 separated by a comma then click the Ok button to save the custom view.
Event ID 27 in Windows Server 2022 typically pertains to a network-related issue, specifically to the network adapter. This event is logged when the network link is disconnected, meaning the network adapter has lost its connection to the network. This can occur for various reasons, including hardware issues, driver problems, or network configuration changes.
Event ID 10000 in Windows Server 2022 is typically associated with the DistributedCOM (DCOM) component. DCOM is a Microsoft technology that enables software components to communicate over a network. This event ID usually indicates a problem related to DCOM, such as permission issues, network connectivity problems, or other errors involving COM components.
6
You will get a prompt regarding memory and processor time, simply click the Yes button to proceed.
7
Enter a name for your custom view.
8
If there were no network disconnects or errors, logs won’t show any warnings.
On the other hand, if there were network disconnect, it will show warning.
9
Compare the dates between the event viewer and your trading platform.
If the dates between the warning shown in the Event Viewer matches the date shown in your trading platform’s Logs, that would mean that your platform’s disconnect was caused by network failure, while if the dates between Event Viewer and trading platform logs are not matching, the disconnect happened between your trading platform and your broker.
How to check network disconnection events in the Windows system event log
Если вы подозреваете, что встроенный Windows Defender Firewall блокирует некоторые сетевые подключений (от определенной программы или сервиса), плохим решением будет его полное отключение. Вместо этого вы можете включить логирование сетевого трафика, проходящего через брандмауэр, определить заблокированные используемые порты и/или IP адреса источника/назначения и создать корректное разрешающее правило.
В этой статье мы покажем, как включить логирование сетевых подключений в Windows Firewall и выполнить поиск по логам.
Настройка логирования Windows Firewall в текстовый файл
Содержание:
- Запись логов Windows Firewall в журнал событий Windows
Windows Defender Firewall позволяет записывать в лог файл как успешные так и заблокированные сетевые подключения. Логирование можно включить отдельно для каждого сетевого профиля (частная, общедоступная или доменная сеть). По умолчанию логирование трафика в брандмауэре отключено. Чтобы включить ведение логов в Windows Firewall:
- Откройте MMC оснастку Windows Firewall with Advanced Security (
wf.msc
). - Щелкните правой кнопкой по корню консоли и выберите Properties;
- Затем выберите вкладку сетевого профиля Windows, для которого вы хотите включить логирование (Domain, Private или Public Profile).
- На вкладке профиля в секции Logging нажмите кнопку Customize.
- Здесь можно изменить следующие настройки:
Файл лога: по умолчанию
%systemroot%\system32\LogFiles\Firewall\pfirewall.log
Максимальный размер лога: увеличьте с 4 Мб до 20 Мб (
20480
Кб)Log dropped packets: нужно ли записывать в лог отфильтрованные сетевые пакеты
Log successful connections: нужно ли логировать успешные сетевые подключения (может получиться очень большой лог)
Чтобы понять, какой сетевой профиль заблокировал или пропустил определенное сетевое подключение, можно писать лог файервола в отдельный файл для каждого профиля. Например:
-
%windir%\system32\logfiles\firewall\pfirewall_domain.log
-
%windir%\system32\logfiles\firewall\pfirewall_private.log
-
%windir%\system32\logfiles\firewall\pfirewall_public.log
Также можно включить эти же параметры логирования Windows Firewall с помощью PowerShell:
Set-NetFireWallProfile -Profile Public -LogBlocked True -LogMaxSize 20480 -LogFileName "%systemroot%\system32\LogFiles\Firewall\pfirewall.log" -Verbose
Вывести текущие настройки логирования брандмауэра для всех профилей:
Get-NetFirewallProfile| select Name, Enabled, Log*|ft
Теперь Windows Firewall будет записывать в лог файлы все сетевые подключения. Вы можете открыть файл лога вручную или выполнить поиск по нему с помощью PowerShell. Командлет Select-String совмещает в себе аналог grep и tail для Windows.
Например, следующая команда будет выводить в реальном времени на экран все отфильтрованные (DROP) сетевые подключения на порт TCP порт 445 (SMB):
Get-Content C:\Windows\System32\LogFiles\Firewall\pfirewall.log -wait | Select-String -pattern "DROP.*TCP.*445"
Используется такой формат лог файла:
date time action protocol src-ip dst-ip src-port dst-port size tcpflags tcpsyn tcpack tcpwin icmptype icmpcode info path pid
Для анализа лог файлов файервола можно воспользоваться такой PowerShell функцией, которая представит лог в виде удобной графической таблицы Out-GridView:
function Get-WindowsFirewallLog {
param(
[parameter(Position=0,Mandatory=$false)]
[ValidateScript({Test-Path $_})]
[string]$LogFilePath = "$env:SystemRoot\System32\LogFiles\Firewall\pfirewall.log"
)
$headerFields = @("date","time", "action","protocol","src-ip","dst-ip","src-port","dst-port","size", "tcpflags","tcpsyn", "tcpack","tcpwin","icmptype","icmpcode", "info","path")
$firewallLogs = Get-Content $LogFilePath | ConvertFrom-Csv -Header $headerFields -Delimiter ' '
$firewallLogs | Out-GridView
}
Get-WindowsFirewallLog
Запись логов Windows Firewall в журнал событий Windows
По сравнению с текстовыми файлам иногда более удобно записывать логи сетевых подключений Windows Firewall в журнал событий (Event Viewer). Для этого нужно включить политики аудита в локальной GPO:
- Откройте редактор локальной GPO (
gpedit.msc
) - Перейдите в раздел Computer Configuration -> Windows Settings -> Security Settings -> Advanced Audit Policy Configuration -> System Audit Policies — Local Group Policy Object -> Object Access
- Параметр Audit Filtering Platform Packet drop позволяет включить аудит заблокированных подключений Windows Firewall. Откройте настройки политики и активируйте опцию Failure.
- Audit Filtering Platform Connection позволяет логировать успешные подключения. Используется эта политика аудита довольно редко, т.к. в лог будет писаться очень много событий (потребуется увеличение размеров журнала Event Viewer)
- Обновите настройки локальной GPO командой
gpupdate /force
Такую политику аудита можно включить командой:
Auditpol /set /category:"System" /SubCategory:"Filtering Platform Packet Drop" /failure:enable
Вывести текущие настройки политика аудита Windows Firewall:
auditpol /get /subcategory:"Filtering Platform Packet Drop","Filtering Platform Connection"
Чтобы посмотреть события Windows Firewall, откройте Event Viewer (
eventvwr.msc
). Разверните Windows Logs -> Security. Включите фильтр событий по категории Filtering Platform Packet Drop.
В списке событий появится все сетевые подключения, заблокированные Windows Firewall. Такие события будут иметь Event ID 5152 (
The Windows Filtering Platform has blocked a packet
). В описании события можно получить сетевую информацию: номер протокола (TCP-6, UDP-17, ICMP-1), IP адрес и порт источника/приемника, направление (Inbound, Outbound), процесс (для исходящих подключений).
Для поиска и фильтрации событий Windows Firewall в Event Viewer можно использовать PowerShell командлет Get-WinEvent. Следующий PowerShell скрипт выполнит поиск всех заблокированных брандмауэром событий (попыток) подключений на порт 3388 и выведет таблицу с временем подключения и источником:
$destinationPort = "3388"
$filterXml = @"
<QueryList>
<Query Id="0" Path="Security">
<Select Path="Security">
*[System[(EventID=5152)]]
and
*[EventData[Data[@Name='DestPort'] and (Data='$destinationPort')]]
</Select>
</Query>
</QueryList>
"@
$FirewallLogs = @()
$events=Get-WinEvent -FilterXml $filterXml
foreach ($event in $events) {
$eventXml = [xml]$event.ToXml()
$SourceAddress = $eventXml.Event.EventData.Data | Where-Object { $_.Name -eq 'SourceAddress' } | Select-Object -ExpandProperty '#text'
$DestPort = $eventXml.Event.EventData.Data | Where-Object { $_.Name -eq 'DestPort' } | Select-Object -ExpandProperty '#text'
$FirewallLog = New-Object PSObject -Property @{
SourceAddress= $SourceAddress
Time=$event.TimeCreated
DestPort=$DestPort
}
$FirewallLogs += $FirewallLog
}
$FirewallLogs
Таким образом, включив логи брандмауэра вы можете детально инспектировать все отброшенные и разрешенные взодящие/исходящие сетевые соединения, найти ошибки в своих правилах Windows Firewall и создать корректные.
Загрузить PDF
Загрузить PDF
Возможно, вам нужно посмотреть активные сетевые соединения на компьютере под управлением Windows. Это можно сделать несколькими способами. Вы можете открыть Центр управления сетями и общим доступом или работать с утилитой командной строки «netstat» (network statistics – сетевая статистика), которая позволяет обнаруживать сетевые проблемы и сетевой трафик; пользоваться этой утилитой довольно легко.
-
-
-
-
В Центре управления сетями и общим доступом вы можете получить информацию о состоянии сети, типе сетевого соединения, активных соединениях и возможности подключиться к другим компьютерам.[1]
-
Значок зависит от типа вашего соединения. Например, если вы подключены к Ethernet-сети, то значок имеет вид Ethernet-кабеля со штекером, а если вы подключены к беспроводной сети, то значок выглядит как пять вертикальных столбцов.[2]
-
Откроется окно, в котором будет отображена подробная информация о вашем сетевом соединении.
Реклама
-
-
-
Откроется окно «Сетевые подключения», в котором отобразятся активные сетевые соединения.
-
Щелкните правой кнопкой мыши по интересующему вас сетевому подключению.
-
-
В этом окне вы можете просмотреть информацию о сетевом соединении. Для получения дополнительной информации нажмите «Сведения».[3]
Реклама
-
-
В результатах поиска щелкните по «cmd», чтобы открыть окно командной строки (в Windows Vista и поздних версиях).[4]
-
В этом окне вы будете вводить команду netstat. Команда вводится с различными опциями, самые популярные из которых приведены ниже.
-
Эта команда приведет к отображению списка активных TCP-соединений (TCP, transmission control protocol — протокол управления передачей), в котором имени физического компьютера соответствуют локальные адреса, а имени хоста – удаленные адреса. Также будет отображено состояние порта (в режиме ожидания, подключение установлено и так далее).[5]
-
Введите netstat -b, чтобы отобразить программы, использующие сетевые соединения. Эта команда приведет к отображению списка, который аналогичен выводимому командой netstast -a, но здесь также отобразятся программы, использующие соединения и порты.[6]
-
Эта команда приведет к отображению списка TCP-соединений, но вместо имен компьютеров или поставщиков услуг отобразятся реальные IP-адреса.[7]
-
, чтобы отобразить командные опции. Эта команда приведет к отображению списка всех опций команды netstat.[8]
-
Введя команду netstat, откроется список TCP/UCP-соединений с IP-адресами.
Реклама
-
-
Откроется окно с текстовой строкой.
-
-
В этом окне вы будете вводить команду netstat. Команда вводится с различными опциями, самые популярные из которых приведены ниже.
-
Эта команда приведет к отображению списка активных TCP-соединений (TCP, transmission control protocol — протокол управления передачей ), в котором имени физического компьютера соответствуют локальные адреса, а имени хоста – удаленные адреса. Также будет отображено состояние порта (в режиме ожидания, подключение установлено и так далее).[9]
-
Введите netstat -b, чтобы отобразить программы, использующие сетевые соединения. Эта команда приведет к отображению списка, который аналогичен выводимому командой netstast -a, но здесь также отобразятся программы, использующие соединения и порты.[10]
-
Эта команда приведет к отображению списка TCP-соединений, но вместо имен компьютеров или поставщиков услуг отобразятся реальные IP-адреса.[11]
-
, чтобы отобразить командные опции. Эта команда приведет к отображению списка всех опций команды netstat.[12]
-
Введя команду netstat, откроется список TCP/UCP-соединений с IP-адресами.
Реклама
Советы
- В качестве альтернативы на сайте SysInternals скачайте программу TCPView.
- Поэкспериментируйте с командами UNIX (упомянутая выше команда netstat также является командой UNIX). Эти команды можно найти в интернете при помощи поисковика.
- Имейте в виду, что в Linux команда netstat больше не поддерживается, поэтому вместо нее используйте команды ip –s или ss, или ip route.
Реклама
Об этой статье
Эту страницу просматривали 179 197 раз.
Была ли эта статья полезной?
В ходе работы Windows сохраняет различную информацию в журнале событий, часть из которой может быть использована для создания отчетов. Например, ранее на сайте рассматривалось создание отчета о состоянии и использовании батареи ноутбука. Отчет о работе Wi-Fi (WLAN) — ещё один доступный отчет такого рода.
Далее в статье о том, как создать отчет WLAN в Windows, какая информация в нём присутствует и для чего он может пригодиться.
Создание отчета WLAN и отображаемая в нём информация
Для создания отчета о работе Wi-Fi достаточно использовать следующие шаги:
- Запустите командную строку от имени администратора (способы это сделать).
- Введите команду
netsh wlan show wlanreport
и нажмите Enter.
- Вы увидите информацию о том, куда был сохранен отчет WLAN, стандартное расположение — папка
C:\ProgramData\Microsoft\Windows\WlanReport
Отчет WLAN представляет собой обычный файл HTML (и набор дополнительных файлов), который может быть открыт в любом браузере.
Открыв отчет, вы найдёте следующие сведения о вашей Wi-Fi сети и её использовании:
- Графическое представление периодов активности Wi-Fi сети за последние 3 дня с индикацией ошибок, подключению к Интернету или отсутствию подключения, переключения между различными режимами. Схема интерактивная и, подведя указатель мыши к различным элементам на графике, можно прочесть их описание.
- Информацию об устройстве, операционной системе, доступных сетевых адаптерах (не только Wi-Fi).
- Результаты выполнения команд командной строки для получения сведений о конфигурации сети, профилях WLAN, хранилищах сертификатов, текущем сетевом профиле (к сожалению, с некоторыми проблемами кодировки для русскоязычной версии ОС).
- Сводную информацию о событиях в ходе использования Wi-Fi сети.
- Подробную информацию о событиях в ходе каждой сетевой сессии.
Для большинства пользователей, которые не испытывают проблем с работой Wi-Fi сети, информация из отчёта не будет представлять большого интереса, однако она может быть полезной если:
- Требуется определить, когда выполнялось подключение ПК или ноутбука к сети.
- При работе Wi-Fi возникают проблемы и требуется разобраться, с чем они могут быть связаны.
- Необходимо передать максимум информации о сети стороннему специалисту, который помогает решить проблемы с работой Интернета — для этого вы можете отправить ему HTML-файл отчёта.
Надеюсь, для кого-то из читателей информация о такой возможности будет полезной и однажды пригодится.