-
Anonymous
Повторная передача TCP Ubuntu 22.04 после успешного сокета ARP
Сообщение
Anonymous »
Я попытался подключиться к машине нижнего уровня с помощью сокета. Однако примерно через десять минут соединения машина нижнего уровня запросила ARP. После успешного ответа на запрос ARP, когда я впоследствии запросил данные с машины нижнего уровня, это вызвало повторную передачу, в результате чего машина нижнего уровня перестала отвечать. При тестировании в Windows я заметил, что Windows также запускает запрос ARP, но продолжает нормально работать.
Ниже приведены результаты, полученные после перехвата пакетов:
14:03:04.794499 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863859:863881, ack 41104299, win 63867, length 22 14:03:04.794510 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863859:863881, ack 41104299, win 63867, length 22 14:03:04.795042 enp3s0 P IP 192.168.1.11.cisco-sccp > rubik.36371: Flags [P.], seq 41104299:41105346, ack 863881, win 2810, length 1047 14:03:04.795042 bridge0 In IP 192.168.1.11.cisco-sccp > rubik.36371: Flags [P.], seq 41104299:41105346, ack 863881, win 2810, length 1047 14:03:04.824835 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863881:863903, ack 41105346, win 63867, length 22 14:03:04.824844 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863881:863903, ack 41105346, win 63867, length 22 14:03:04.825422 enp3s0 B ARP, Request who-has rubik tell 192.168.1.11, length 46 14:03:04.825428 wlx1c4bd681b57e Out ARP, Request who-has rubik tell 192.168.1.11, length 46 14:03:04.825435 enp4s0 Out ARP, Request who-has rubik tell 192.168.1.11, length 46 14:03:04.825422 bridge0 B ARP, Request who-has rubik tell 192.168.1.11, length 46 14:03:04.825449 bridge0 Out ARP, Reply rubik is-at 2e:92:39

15:bb (oui Unknown), length 28 14:03:04.825452 enp3s0 Out ARP, Reply rubik is-at 2e:92:39

15:bb (oui Unknown), length 28 14:03:04.825608 enp3s0 P IP 192.168.1.11.cisco-sccp > rubik.36371: Flags [P.], seq 41105346:41106393, ack 863903, win 2788, length 1047 14:03:04.825608 bridge0 In IP 192.168.1.11.cisco-sccp > rubik.36371: Flags [P.], seq 41105346:41106393, ack 863903, win 2788, length 1047 14:03:04.852365 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:04.852375 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:05.058882 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:05.058885 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:05.474879 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:05.474881 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:06.306882 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:06.306885 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:07.970882 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:07.970887 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:09.905975 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [F.], seq 863925, ack 41106393, win 63867, length 0 14:03:09.905986 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [F.], seq 863925, ack 41106393, win 63867, length 0 14:03:10.432989 bridge0 Out IP rubik.44333 > 192.168.1.11.cisco-sccp: Flags
, seq 1668980638, win 64240, options [mss 1460,sackOK,TS val 1798273288 ecr 0,nop,wscale 0], length 0 14:03:10.432999 enp3s0 Out IP rubik.44333 > 192.168.1.11.cisco-sccp: Flags , seq 1668980638, win 64240, options [mss 1460,sackOK,TS val 1798273288 ecr 0,nop,wscale 0], length 0 14:03:11.426884 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [FP.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:11.426889 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [FP.], seq 863903:863925, ack 41106393, win 63867, length 22
Это мой код связи, написанный на C# .NET 6:
Socket? socket = ConnectSocket.GetSocket(instConfig.IP);
if (socket == null)
{
return null;
}
string temp_SN = "00000000";
try
{
byte[] req1 = PDADetectorSM.PDADetectorGetData_3230(temp_SN, calcParm.DataId, calcParm.FinalIndexS, calcParm.FinalIndexE);
// 发送消息
socket.Send(req1);
// 接收消息
socket.Receive(resData);
}
catch(Exception ex)
{
//socket重新握手
ConnectSocket.ResetSocket(instConfig!.IP!);
return null;
}
Подробнее здесь: https://stackoverflow.com/questions/798 ... socket-arp
1765956872
Anonymous
Я попытался подключиться к машине нижнего уровня с помощью сокета. Однако примерно через десять минут соединения машина нижнего уровня запросила ARP. После успешного ответа на запрос ARP, когда я впоследствии запросил данные с машины нижнего уровня, это вызвало повторную передачу, в результате чего машина нижнего уровня перестала отвечать. При тестировании в Windows я заметил, что Windows также запускает запрос ARP, но продолжает нормально работать.
Ниже приведены результаты, полученные после перехвата пакетов:
14:03:04.794499 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863859:863881, ack 41104299, win 63867, length 22 14:03:04.794510 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863859:863881, ack 41104299, win 63867, length 22 14:03:04.795042 enp3s0 P IP 192.168.1.11.cisco-sccp > rubik.36371: Flags [P.], seq 41104299:41105346, ack 863881, win 2810, length 1047 14:03:04.795042 bridge0 In IP 192.168.1.11.cisco-sccp > rubik.36371: Flags [P.], seq 41104299:41105346, ack 863881, win 2810, length 1047 14:03:04.824835 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863881:863903, ack 41105346, win 63867, length 22 14:03:04.824844 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863881:863903, ack 41105346, win 63867, length 22 14:03:04.825422 enp3s0 B ARP, Request who-has rubik tell 192.168.1.11, length 46 14:03:04.825428 wlx1c4bd681b57e Out ARP, Request who-has rubik tell 192.168.1.11, length 46 14:03:04.825435 enp4s0 Out ARP, Request who-has rubik tell 192.168.1.11, length 46 14:03:04.825422 bridge0 B ARP, Request who-has rubik tell 192.168.1.11, length 46 14:03:04.825449 bridge0 Out ARP, Reply rubik is-at 2e:92:39:cd:15:bb (oui Unknown), length 28 14:03:04.825452 enp3s0 Out ARP, Reply rubik is-at 2e:92:39:cd:15:bb (oui Unknown), length 28 14:03:04.825608 enp3s0 P IP 192.168.1.11.cisco-sccp > rubik.36371: Flags [P.], seq 41105346:41106393, ack 863903, win 2788, length 1047 14:03:04.825608 bridge0 In IP 192.168.1.11.cisco-sccp > rubik.36371: Flags [P.], seq 41105346:41106393, ack 863903, win 2788, length 1047 14:03:04.852365 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:04.852375 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:05.058882 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:05.058885 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:05.474879 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:05.474881 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:06.306882 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:06.306885 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:07.970882 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:07.970887 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [P.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:09.905975 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [F.], seq 863925, ack 41106393, win 63867, length 0 14:03:09.905986 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [F.], seq 863925, ack 41106393, win 63867, length 0 14:03:10.432989 bridge0 Out IP rubik.44333 > 192.168.1.11.cisco-sccp: Flags [S], seq 1668980638, win 64240, options [mss 1460,sackOK,TS val 1798273288 ecr 0,nop,wscale 0], length 0 14:03:10.432999 enp3s0 Out IP rubik.44333 > 192.168.1.11.cisco-sccp: Flags [S], seq 1668980638, win 64240, options [mss 1460,sackOK,TS val 1798273288 ecr 0,nop,wscale 0], length 0 14:03:11.426884 bridge0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [FP.], seq 863903:863925, ack 41106393, win 63867, length 22 14:03:11.426889 enp3s0 Out IP rubik.36371 > 192.168.1.11.cisco-sccp: Flags [FP.], seq 863903:863925, ack 41106393, win 63867, length 22
Это мой код связи, написанный на C# .NET 6:
Socket? socket = ConnectSocket.GetSocket(instConfig.IP);
if (socket == null)
{
return null;
}
string temp_SN = "00000000";
try
{
byte[] req1 = PDADetectorSM.PDADetectorGetData_3230(temp_SN, calcParm.DataId, calcParm.FinalIndexS, calcParm.FinalIndexE);
// 发送消息
socket.Send(req1);
// 接收消息
socket.Receive(resData);
}
catch(Exception ex)
{
//socket重新握手
ConnectSocket.ResetSocket(instConfig!.IP!);
return null;
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79849161/ubuntu-22-04-tcp-retransmission-after-successful-socket-arp[/url]