我正在做一个覆盆子pi的气球项目.当我们有可能恢复树莓派时,它很可能会在农村地区,我想安全地关闭pi.如果没有附近的路由器或网络,我想知道是否有办法将带有以太网电缆的树莓派直接连接到笔记本电脑上?
我主要来自嵌入式软件背景,因此我对硬件的了解非常有限.我总是将以太网视为计算机上连接以太网电缆的小型物理连接器.从软件的角度来看,您需要做的就是安装驱动程序(在Windows中)或配置Linux内核以包含以太网的驱动程序.
问题:
但正如我已经开始下降一个等级(对硬件)和寻找不同的数据表和图表,我已经开始遇到像PHY,MII,SGMII,RGMII等方面,现在我是什么构成有点困惑以太网?例如,当我说英特尔82574L 1.0 Gbps以太网端口时,所有这些术语适用于哪里?
我想检索用于访问特定网站的网络接口的以太网地址.
如何在Java中完成?
解决方案请注意,已接受的解决方案getHardwareAddress仅在Java 6中可用.除了执行i(f | p)confing之外,似乎没有Java 5的解决方案.
我正在测试一个协议的实现,该协议使用以太网(而不是IP)在两台计算机之间进行通信.为了实际上不必拥有两台物理计算机,我想创建两个虚拟以太网接口.这些只能相互通信,因此一个端点程序将绑定到一个接口,另一个端点将绑定到另一个端点.
这可能吗,我该怎么办?
我有一个关于以太网的小问题.
我的三个问题是:
我们可以通过编程方式开启/关闭Ethernet吗?
我们可以编程启用/禁用Ethernet吗?
我们能以编程方式连接Ethernet吗?
上述问题是通过以下方式完成的Wifi.喜欢
我们可以通过编程方式开启/关闭Wifi.
我们可以通过编程方式启用/禁用Wifi.
我们可以通过编程连接Wifi使用WifiManager.
android是否提供任何EthernetManager类似WifiManager处理Ethernet?
或者,如果这似乎不可行,那么我原来的要求是:
我要澄清的第一件事是"设备已经生根".
我可以操作设置(默认)吗?就像我不希望Settings.apk除了WIFI和之外的任何其他选项Ethernet.它应该只显示Wifi和Ethernet.而已.我可以从"设置"中禁用所有选项,还是可以从"设置"中删除所有其他选项?
我想连接两个Docker容器,它们在Docker-Compose文件中相互定义(app和db).其中一个(app)也应该连接到host网络.
容器应连接到公共用户定义的网络(appnet或default),以使用来自docker网络的嵌入式DNS功能.
app 还需要直接连接到主机网络以接收泊坞主机的物理网络中的以太网广播(网络层2).
如果我同时使用这两个指令network_mode: host并networks在一起撰写,我会收到以下错误.
ERROR: 'network_mode' and 'networks' cannot be combined
所以我只能这样做networks!?
version: "3.3"
services:
app:
build: .
image: app
container_name: app
environment:
- MONGODB_HOST=db
depends_on:
- db
networks:
- appnet
- hostnet
db:
image: mongo:latest
container_name: db
networks:
- appnet
networks:
appnet:
hostnet:
external:
name: host
Run Code Online (Sandbox Code Playgroud)
上述撰写文件会产生错误.
ERROR: for app network-scoped alias is supported only for containers …
我希望能够使用VB.net或C#(使用.NET 3.5 SP1)从第一个活动网络适配器读取mac地址以获取winform应用程序
当发送者需要通过以太网以可靠的方式将相对大量的数据(比如几兆字节每秒)多播到同一子网上的适量接收器(比如少于十几个)时,最有效的协议是什么?通过可靠,我的意思是,如果数据包丢失,协议确保重新发送,以便任何接收器都不会丢失数据." 高效"这个术语要定义起来要困难得多,但是假设我们希望通过两端适度的CPU使用来最大化吞吐量并最小化网络带宽.这仍然不是一个明确的定义,但它是我能想到的最好的.面向流或面向消息的协议都是可以接受的.
我很欣赏现实世界的例子,我很乐意接受主观的答案,即你最喜欢的多播协议是什么,如果你能解释它的优点和缺点.
ethernet protocols multicast file-transfer reliable-multicast
我正在测试一段电缆故障查找软件,我想在cat5电缆上可靠且可重复地产生电缆故障.
目前我正在使用一米长的无线电缆,并在电源旁边手动蠕动电缆,但我无法检测到应用中的任何故障(我正在读取以太网ASIC上的以太网故障计数器.)是否这是因为没有产生故障,或者因为软件/硬件检测有问题,我无法分辨.
有没有办法在软件中执行此操作?
我决定用更高级别的语言编写一些东西,比如Java或python,并且作为最后的手段愿意将它放在C中,但我真的不想重写以太网驱动程序纯粹是为了修复可能的错误.
[编辑]:我想创建电缆故障 - 不检测它们.
[编辑]:我通过FTP和SCP传输大文件而没有使用篡改电缆的问题,我发现在使用wireshark检查流量时没有出现错误
好吧,花了一天时间与C战斗后,这就是python解决方案.
首先禁用以太网卡的自动校验和:
sudo ethtool -K eth1 tx off
Run Code Online (Sandbox Code Playgroud)
然后,从python发送你的狡猾的框架:
#!/usr/bin/env python
from socket import *
#
# Ethernet Frame:
# [
# [ Destination address, 6 bytes ]
# [ Source address, 6 bytes ]
# [ Ethertype, 2 bytes ]
# [ Payload, 40 to 1500 bytes ]
# [ 32 bit CRC chcksum, 4 bytes ]
# ] …Run Code Online (Sandbox Code Playgroud) 我在DD-WRT路由器上运行tcpdump,以便从手机中捕获上行链路数据.我想只听一些mac地址.为此,我尝试使用类似于Wireshark的语法运行命令:
tcpdump -i prism0 ether src[0:3] 5c:95:ae -s0 -w | nc 192.168.1.147 31337
这样我就可以收听所有具有初始mac地址的设备5c:95:ae.
问题是语法错误,我想知道是否有人知道正确的语法来获得我想要的东西.
ethernet ×10
networking ×5
.net ×1
android ×1
c ×1
docker ×1
java ×1
linux ×1
mac-address ×1
multicast ×1
pcap ×1
protocols ×1
python ×1
raspberry-pi ×1
raw-ethernet ×1
service ×1
ssh ×1
tcpdump ×1
wireshark ×1