标签: networking

IPv6可以消除mac地址吗

MAC 地址用于唯一标识我的计算机。IP 地址用于将数据包路由到网络,因为它具有层次结构,但它不唯一标识计算机。那么,在IPv6之后,每台计算机都会有一个唯一的IP地址,那么MAC地址还有必要吗?如果我理解错了,请纠正我。

ip networking ipv6

0
推荐指数
1
解决办法
1287
查看次数

MAC 地址上的网络字节顺序

我正在编写一个代码,该代码要求我解析以 uint8_t * 指针形式接收的传入帧。

我编写了一个实用方法来从帧中获取 mac 地址并将其转换为 uint64_t 值以便于计算。

uint64_t addr = uint64_t(_frm_ptr[0]) << 40 | uint64_t(_frm_ptr[1]) << 32 | 
                       uint64_t(_frm_ptr[2]) << 24 | uint64_t(_frm_ptr[3]) << 16 | 
                       uint64_t(_frm_ptr[4]) << 8 | uint64_t(_frm_ptr[5]);
Run Code Online (Sandbox Code Playgroud)

我需要知道,如果源 mac 地址是大端格式的“b8:ac:6f:c0:3d:25”,它会以相同的顺序传输吗?

mac地址如何在网络上传输?

上面的代码片段是否适用于所有平台?

c sockets networking mac-address

0
推荐指数
2
解决办法
7458
查看次数

拦截请求时出错

我正在使用Burp suite's代理功能。我已将 Firefox 设置更改为:

选项 > 网络 > 设置

在此处输入图片说明

但是当我http://localhost:8080/project_name在浏览器中运行以拦截请求时,它会出现以下错误:

Burp proxy error: invalid client request received: first line of request did not contain an absolute URL - try enabling invisible proxy support

任何人都可以向我提供任何提示为什么会出现此错误?

java testing networking burp

0
推荐指数
1
解决办法
7021
查看次数

如何计算子网

已经有一段时间了,一直无法弄清楚如何对以下范围进行子网划分。有人可以帮我划分这些范围的子网并提供一些见解吗?

Subnet the 10.0.0.0/8 address space into 30 subnets.
Subnet the 172.16.0.0 address space into 13 subnets.
Subnet the 192.168.1.0/24 address space into 4 subnets.
Subnet the 192.168.0.0/24 address space into 7 subnets.
Run Code Online (Sandbox Code Playgroud)

ip networking ip-address subnet

0
推荐指数
1
解决办法
3809
查看次数

我运行 UNIX Network Programming Volume 1(3rd) 但是如何配置网络环境?

我只是运行“1.2 A Simple Daytime Client”示例。但是在ubuntu下,如何配置网络环境?

示例用法是“solaris % a.out 206.168.112.96”,这里我应该如何更改IP。我通过局域网连接到互联网。我通过 ifconfig 显示的 ip 是

inet address: 192.168.0.109,但是在这里,当我输入时a.out 192.168.0.109,它给出了“连接错误:连接被拒绝”的信息,我该怎么办?

附上这个示例代码:

介绍/daytimetcpcli.c

  #include  "unp.h"

  int
  main(int argc, char **argv)
  {
      int     sockfd, n;
      char    recvline[MAXLINE + 1];
      struct sockaddr_in servaddr;

      if (argc != 2)
          err_quit("usage: a.out <IPaddress>");

     if ( (sockfd = socket(AF_INET, SOCK_STREAM, 0)) < 0)
         err_sys("socket error");

     bzero(&servaddr, sizeof(servaddr));
     servaddr.sin_family = AF_INET;
     servaddr.sin_port = htons(13);  /* daytime server */
     if (inet_pton(AF_INET, argv[1], &servaddr.sin_addr) <= 0)
         err_quit("inet_pton error for %s", …
Run Code Online (Sandbox Code Playgroud)

c linux networking

0
推荐指数
1
解决办法
1547
查看次数

通过较小的 MTU 时 UDP 如何工作

我通过多个路由器将 1 MB 的 UDP 数据从一个系统发送到另一个系统。两个系统都有 1500 MTU,在两台主机之间,我有一个 MTU 较低的路由器,如 576。

那么路由器(具有较低的 MTU (576))是将 UDP 数据包分段并发送到接收主机还是将ICMP 消息(PMTU)发送到发送主机以进行进一步分段?

networking udp udpclient mtu

0
推荐指数
1
解决办法
196
查看次数

尝试导入套接字时出错?

我最近安装了 python、ipython 和 pip,使用 pip 我安装了 socket 库,还有很多其他的,现在我无法在通过 cmd 运行 python 程序时导入 socket,但我可以使用 ipython,当我运行 ipython 时我导入套接字一切正常,现在我编写了一个简单的脚本,名为“tcp.py”,它包含的只是以下行

进口插座

Traceback (most recent call last):
 File "C:\dir\desktop\tcp.py", line 1, in <module>
  import socket
 File "C:\dir\desktop\socket.py", line 1, in <module>
  socket
NameError: name 'socket' is not defined
Run Code Online (Sandbox Code Playgroud)

知道如何解决这个问题吗?

python sockets networking ipython python-import

0
推荐指数
1
解决办法
6782
查看次数

期望脚本箭头键

我不知道如何使用expect发送箭头键,因此我为所有箭头键生成了autoexpect脚本,并发现autoexpect为右箭头键生成了这个字符:

send -- "^[\[C"
Run Code Online (Sandbox Code Playgroud)

我在自定义脚本中使用了相同的发送命令,但出现以下错误:

while executing
"send -- "^[\[C"
expect eof
"
    (file "script_auto.exp" line 38)
Run Code Online (Sandbox Code Playgroud)

我到底该怎么做才能发送右箭头键。任何帮助,将不胜感激。

networking system-administration tcl expect

0
推荐指数
1
解决办法
1977
查看次数

TCP 三向握手 - Piggybacking ACKs

我理解在三向握手中,有时接收端会在建立连接(piggybacking)时发送一个SYNACK数据包,但是它什么时候发送一个SYN然后一个ACK数据包?

例如:

->同步

<-SYN_ACK

->确认

相对:

->同步

<-同步

->SYN_ACK

谢谢!

networking tcp protocols handshake

0
推荐指数
1
解决办法
1313
查看次数

返回的UDP数据包缺少端口并且无法到达

带有客户端和服务器的Golang应用程序。

服务器使用net.ListenUDP-客户端也使用net.ListenUDP,连接到服务器并发送带有服务器地址conn.WriteToUDP的数据包。

服务器使用ReadFromUDP接收数据包并获取返回地址。然后,使用此返回地址,它将大量数据包发送回客户端。

在本地计算机上同时运行客户端和服务器时,这可以完美运行。使用Wireshark,我可以检查UDP数据包,并查看它们包含源端口和目标端口-在应用程序中,我可以看到它们到达并且我的各种校验和测试表明数据是准确的。

然后,我将服务器从站点移到了远程计算机上。该应用程序停止工作。我可以成功地将第一条消息从客户端发送到服务器-很好。服务器将响应“向”客户端发送回-但客户端从未收到。

使用Wireshark,我可以看到数据包确实以正确的IP地址返回到本地计算机上。看来我的网络路由器已对传出数据包执行了NAT-并将正确的响应数据包重新寻址到内部IP。但是没有端口。

所以我有UDP数据包到达正确的机器上,但是没有端口-因此客户端应用程序没有收到它们。应用程序在ReadFromUDP上超时。

我不知道它是否相关,但是在本地计算机上,Wireshark将数据包标记为BT-uTP Utorrent数据包。当它们从远程服务器进入时,这就是我在Wireshark中看到的-请注意缺少端口。

Wireshark数据的屏幕截图

有什么想法我可以解决这个问题。我不认为这是UDP打孔问题,因为尽管我正在通过NAT建立连接,但它与服务器而不是对等服务器建立连接。

sockets networking udp go

0
推荐指数
1
解决办法
41
查看次数