使用 bash 脚本,我可以读取 eth0 的 mac 地址并将其打印到文件中吗?
我在硬盘分区上安装了 CentOS 6.3(新安装...最小安装)。
安装成功后,我看到 eth0 已关闭。我寻找了这个文件:/etc/udev/rules.d/70-persistent-net.rules但没有找到。
这是我的ifcfg-eth0设置:注意我必须手动创建这个文件
DEVICE=eth0
HWADDR=*
BOOTPROTO=dhcp
ONBOOT=yes
TYPE=ETHERNET
Run Code Online (Sandbox Code Playgroud)
这台机器连接到以太网(我在另一个分区上有 Windows 7,我能够很好地连接到 Internet)。
$ ifconfig -a | grep eth
Run Code Online (Sandbox Code Playgroud)
不返回结果
$ ethtool eth0
Run Code Online (Sandbox Code Playgroud)
返回 Cannot get device settings : No such device...
我可以尝试什么让 CentOS 检测 eth0?
我在带有两个以太网适配器的(虚拟)机器上运行 CentOS 6.3。我将 eth0 连接到 TCP/IP LAN,将 eth1 连接到 DSL 调制解调器。该系统旨在用作专用路由器/防火墙,并设置了 iptables 以执行 SNAT、DNAT 和所需的过滤。
这很好用,但我更换了 DSL 调制解调器,不幸的是,新的(更快)调制解调器是白痴的,因此会自动执行 NAT,并且不允许我将我的公共 IP 传递给 eth1。我不能容忍双重 NAT,所以我做了一些研究,并了解到可以通过在计算机上执行 PPPoE 来“欺骗”该调制解调器为我的计算机提供公共 IP。
因此,我将 pppd 设置为使用 eth1,创建 ppp0 连接,然后在我的自定义 iptables 配置脚本中替换 eth1。这似乎在一定程度上有效,但我必须打开防火墙才能使其工作,而且它很不稳定。
部分是为了帮助排除故障,我想完全排除任何 TCP/IP 流量被直接路由到 eth1 的可能性,我的“友好”调制解调器将很乐意对其进行 NAT。
据我所知,PPPoE 位于 IP 下方,而不是 IP 上方 - 在它直接处理以太网帧的物理接口上。因此,我什至不必在 eth1 上配置 IP 网络,以便 pppd 工作,因此在 eth1 上运行的 IP 网络只是不必要地使问题复杂化。
这就是我发现的地方,愚蠢的我,我不知道如何在 Linux 上禁用 TCP/IP 堆栈!我知道在 Windows 机器上,您可以在适配器属性中取消选中 TCP/IP 协议,但在这里我运行的是纯文本 CentOS,我不知道该怎么做。
显然这不是一个非常普遍的愿望,因为我一直在互联网上搜索无济于事。以太网适配器是TCP/IP 连接似乎是一个硬连线假设。嗯,通常...
谢谢你的帮助!凯文
今天我从 Linux (Ubuntu) 机器上移除了我的 GPU,之后以太网停止工作。运行“服务网络重启”会抛出一条错误消息,当我运行“ifconfig”时,只有本地环回可见。在此之后,我重新安装了我的 GPU,互联网突然又开始工作了??
我真的很想让我的机器能够访问互联网而无需在其中安装 GPU..
安装的 GPU 是 NVIDIA GeForce GTX 750 Ti,我使用的是板载以太网连接器。如果您需要更多规格,请告诉我,我会进一步挖掘。
ip linkWITH a GPU的输出:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether d0:50:99:2f:ad:4d brd ff:ff:ff:ff:ff:ff
Run Code Online (Sandbox Code Playgroud)
没有 GPU:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 …Run Code Online (Sandbox Code Playgroud) 今天我收到了一台全新的 Dell OptiPlex 7080,并在上面安装了 Oracle Linux 7。该机器具有外部无线天线和以太网端口。无线天线工作,但以太网端口不工作。
当我运行时,lshw -class network我得到以下输出,显示以太网控制器未被声明:
*-network:0
description: Wireless interface
product: Wi-Fi 6 AX201
vendor: Intel Corporation
physical id: 14.3
bus info: pci@0000:00:14.3
logical name: wlo1
version: 00
serial: e0:d4:64:cf:03:64
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress msix bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=iwlwifi driverversion=5.4.17-2036.103.3.el7uek.x86_64 firmware=50.3e391d3e.0 ip=192.168.178.48 latency=0 link=yes multicast=yes wireless=IEEE 802.11
resources: irq:19 memory:91234000-91237fff
*-network:1 UNCLAIMED
description: Ethernet controller
product: Ethernet Connection (11) I219-LM
vendor: Intel Corporation
physical id: …Run Code Online (Sandbox Code Playgroud) 我正在尝试通过以太网(串行到以太网)将小部件 (192.168.1.214:20108) 连接到 Linux 机器。
在使用虚拟设备驱动程序映射的 Windows 下,我可以看到串行数据,因此我知道串行到以太网的小部件正在工作。
现在,当我指向一个 Linux 机器时,我得到的只是使用 tcpdump 时的连接尝试:
21:00:07.322019 IP 192.168.1.214.20108 > development.local.8234: Flags [R], seq 4096, win 0, length 0
所以以太网数据包正在通过,但我找不到将串行数据(通过端口 8234 以太网)映射到设备的方法。的许多变体socat不会在屏幕上产生任何数据,例如:
$ sudo socat readline TCP-LISTEN:8234,bind=127.0.0.1
Run Code Online (Sandbox Code Playgroud)
或尝试将其绑定到开发人员:
$ socat -d -d -d tcp-l:127.0.0.1:8234,reuseaddr,fork file:/dev/tty0,nonblock,waitlock=/var/run/tty0.lock
Run Code Online (Sandbox Code Playgroud)
这给出了以下输出:
2013/11/11 21:19:41 socat[23757] I setting option "so-reuseaddr" to 1
2013/11/11 21:19:41 socat[23757] I setting option "fork" to 1
2013/11/11 21:19:41 socat[23757] I socket(2, 1, 6) -> 3
2013/11/11 21:19:41 socat[23757] I starting accept loop
2013/11/11 …Run Code Online (Sandbox Code Playgroud) 我正在使用基本操作系统(基于 Ubuntu 12.04),昨天我醒来发现没有有线以太网连接。据我所知,我完全没有改变,它在晚上工作,第二天早上不再工作。
如果我插入我的 USB wi-fi 天线,它会立即拿起它,所以它不是我的连接/调制解调器。如果我用 Ubuntu 以太网启动我的 PC 工作正常,所以它不是物理损坏的东西。
以下是一些输出:
$ifconfig -a
lo Link encap:Bucle local
Direc. inet:127.0.0.1 Másc:255.0.0.0
Dirección inet6: ::1/128 Alcance:Anfitrión
ACTIVO BUCLE FUNCIONANDO MTU:16436 Métrica:1
Paquetes RX:2279 errores:0 perdidos:0 overruns:0 frame:0
Paquetes TX:2279 errores:0 perdidos:0 overruns:0 carrier:0
colisiones:0 long.colaTX:0
Bytes RX:201028 (201.0 KB) TX bytes:201028 (201.0 KB)
wlan0 Link encap:Ethernet direcciónHW 00:25:9c:a4:32:51
Direc. inet:192.168.1.101 Difus.:192.168.1.255 Másc:255.255.255.0
Dirección inet6: fe80::225:9cff:fea4:3251/64 Alcance:Enlace
ACTIVO DIFUSIÓN FUNCIONANDO MULTICAST MTU:1500 Métrica:1
Paquetes RX:53991 errores:0 perdidos:0 overruns:0 frame:0
Paquetes TX:43111 errores:0 …Run Code Online (Sandbox Code Playgroud) 如您所知,在 Windows 中,当我们插入网线时,网络符号会变为另一种状态。
如何通过 Linux 中的命令提示符知道电缆是否已插入?
我的ASUSPRO B8430UA 笔记本电脑有问题:当我使用 Ubuntu 16.04(或 NixOS 16.03)启动它时,以太网端口不工作。使用的驱动程序是e1000e,它报告:
$ dmesg | grep e1000e
[ 5.643760] e1000e: Intel(R) PRO/1000 Network Driver - 3.2.6-k
[ 5.643761] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[ 5.644308] e1000e 0000:00:1f.6: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
[ 5.877838] e1000e 0000:00:1f.6: The NVM Checksum Is Not Valid
[ 5.907340] e1000e: probe of 0000:00:1f.6 failed with error -5
Run Code Online (Sandbox Code Playgroud)
在 Windows 7 以太网端口下工作正常:我可以连接到 Internet。根据 Windows,我有Intel(R) 以太网连接 I219-V。
我搜索了“官方” Linux 驱动程序 …
服务器有多个 NIC,其中只有一个插入了电缆。
如何测试给定端口是否ethX已插入?
我发现很多类似的问题,但既不ethtool也不cat /sys/class/net/eth1/carrier为我工作。
就我而言,电缆实际上已连接到eth2,但ethtool仍显示Link detected: no
Settings for eth2:
Supported ports: [ FIBRE ]
Supported link modes: 10000baseT/Full
Supported pause frame use: Symmetric
Supports auto-negotiation: No
Advertised link modes: 10000baseT/Full
Advertised pause frame use: Symmetric
Advertised auto-negotiation: No
Speed: Unknown!
Duplex: Unknown! (255)
Port: Direct Attach Copper
PHYAD: 0
Transceiver: internal
Auto-negotiation: off
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
drv probe …Run Code Online (Sandbox Code Playgroud) ethernet ×10
linux ×4
centos ×2
hardware ×2
networking ×2
asus ×1
command-line ×1
ifconfig ×1
intel ×1
ip ×1
mac-address ×1
oracle-linux ×1
pci ×1
ppp ×1
rhel ×1
serial-port ×1
shell ×1
ubuntu ×1