标签: network-interface

通过静态 IP(NAT?)访问虚拟机

机器62:Ubuntu 16.04,可以上网,可以上网。在 62 位机器上,有一个带有 VM(也是 Ubuntu)的 VirtualBox。

我希望 VM 表现得像一台“普通”机器(ip 请求)。我为它保留了一个静态 IP,但现在我不确定如何配置主机和来宾的接口,我可以像通常 ping 主机一样 ping 来宾机器(通过保留的 IP 代替)共 62 个……)。

ReverseProxy 工作了一段时间,但后来我需要通过我事先不知道的端口的 websocket。那么现在我的下一个猜测是 NAT?转发?桥接网络?伪装?

virtualbox nat network-interface

2
推荐指数
1
解决办法
856
查看次数

为什么我不能将我的 MAC 地址更改为这个地址?

为什么我不能将我的 wifi 卡的 MAC 地址欺骗到1F:2E:3D:4C:5B:6A. 那个地址无效?

root@:~# ifconfig wlan0 down
root@:~# ifconfig wlan0 hw ether 1f:2e:3d:4c:5b:6a
SIOCSIFHWADDR: Cannot assign requested address
Run Code Online (Sandbox Code Playgroud)

networking wifi networkmanager network-interface

2
推荐指数
1
解决办法
111
查看次数

是否可以在 VM 计算机上设置巨型帧 - MTU=9000?

我们有一个hadoop集群;集群中的一些机器是虚拟机,所有其他机器都是物理机。

根据文档,最好在所有机器上设置MTU = 9000,但我不确定VM是否可以支持MTU = 9000。

linux networking vmware network-interface

2
推荐指数
1
解决办法
4466
查看次数

iptable 如何与 linux 网桥一起工作?

设置:

VM1 --- 桥接器 -- VM2

VM1 和 2 位于同一子网上。桥有 2 个接口添加到 brctl 桥。当我使用 uptables -A FORWARD -s (VM1 ip) -j DENY 阻止 VM2 ip 时,它不起作用。据我所知,包从来就没有到网络层,但说“而IP数据包在桥接代码的所有的iptables链将被遍历”。即使 MAC 过滤也不适用于 iptables。ebtables 工作正常。怎么了?

networking iptables bridge network-interface netfilter

2
推荐指数
1
解决办法
9029
查看次数

iptables -p 使用 tcp/udp 以外的协议

根据我的理解,iptables 在传输层(第 4 层)上工作,发生的任何数据包过滤都基于第 4 层的 ip 协议,如 tcp 和 udp。因此,如果我们在iptables -p选项中输入 esp、gre 和 l2tp 等协议,这是否有意义?我们可以使用 iptables 过滤基于第 2/3 层协议的数据包吗?如果不是,那么iptables是如何基于icmp协议过滤数据包的呢?

iptables 新手,我仍在学习。谢谢!

linux iptables linux-kernel iproute network-interface

2
推荐指数
1
解决办法
402
查看次数

网络接口使用哪个 IP 地址?

当主机作为客户端时,接口使用哪个 IP?

假设我已经为 eth0 配置了 2 个 IP 地址:192.168.1.7 和 192.168.1.8

route 命令显示如下内容:

$ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.240.0   0.0.0.0         255.255.240.0   U     256    0        0 eth0
...
Run Code Online (Sandbox Code Playgroud)

这基本上意味着当我尝试从192.168.240.0网络连接到任何主机时,它使用 eth0 接口。好的,但是...来自该接口的哪个 IP 地址?

如果主机充当服务器并且客户端使用 IP 地址连接到我的计算机,192.168.1.7我知道 eth0 将用于192.168.1.7与客户端通信,但是如果我是客户端呢?


编辑

IP 地址已组成,我无法向 Ubuntu WSL 中的接口添加另一个 IP 地址,因为我收到此错误:

$ ip address add 192.168.1.7/24 dev eth0
RTNETLINK answers: Permission denied
Run Code Online (Sandbox Code Playgroud)

的输出ip r s是这样的:

$ ip r s …
Run Code Online (Sandbox Code Playgroud)

networking ip network-interface

2
推荐指数
1
解决办法
443
查看次数

Arch linux 获取网络接口名称

我需要在 Arch linux 中获取所有接口名称。如果我发出命令 ifconfig,我会得到以下响应:

[root@pi ~]# ifconfig

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.154  netmask 255.255.255.0  broadcast 192.168.0.255
        ether b8:27:eb:3c:03:fe  txqueuelen 1000  (Ethernet)
        RX packets 119099  bytes 96958556 (92.4 MiB)
        RX errors 0  dropped 8  overruns 0  frame 0
        TX packets 18304  bytes 5456443 (5.2 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 0  (Local Loopback)
        RX packets 285  bytes 88221 (86.1 KiB)
        RX errors 0 …
Run Code Online (Sandbox Code Playgroud)

linux networking network-interface

1
推荐指数
2
解决办法
5434
查看次数

了解一个接口上的以太网地址

我的 Arch Linux 机器上的 eth0 直接连接到电缆调制解调器。ip a显示以下信息。openvpn 已经建立了一个隧道。所有流量都应仅通过 openvpn 隧道。所有这些其他连接是做什么用的?它们会带来安全问题吗?

eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether c4:d4:64:34:b4:94 brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.181/24 brd 10.0.0.255 scope global eth0
    valid_lft forever preferred_lft forever
    inet6 2601:343:380:1f6::3c84/128 scope global dynamic noprefixroute 
    valid_lft 566296sec preferred_lft 566296sec
    inet6 2601:343:380:1f6:d609:189b:cf5b:bb8e/64 scope global dynamic mngtmpaddr noprefixroute 
    valid_lft 196684sec preferred_lft 196684sec
    inet6 fe80::2e4d:54ff:fe53:8b92/64 scope link 
    valid_lft forever preferred_lft forever
Run Code Online (Sandbox Code Playgroud)

编辑

根据 dirkt 的回答,将标题从“了解一个接口上的以太网连接”更改为“了解一个接口上的以太网地址”。

networking security ip arch-linux network-interface

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

while 检查变量是否在数组 bash 中

我的 while 循环检查中有一个错误。我正在检查用户输入是否是有效的用户界面。这是我的代码:

#!/bin/bash

net_array=()
for iface in $(ifconfig | cut -d ' ' -f1| tr ':' '\n' | awk NF)
do
        net_array+=("$iface")
done
unset "net_array[${#net_array[@]}-1]"

# Network Interface selection

printf "\nPlease select the network interface you want to use:\n"
read -r user_iface

while ! [[ "${net_array[@]}" =~ $user_iface ]]; do # check if the user input is valid
        echo "Please enter a valid network interface:"
        read -r user_iface
done
Run Code Online (Sandbox Code Playgroud)

通常,此代码有效并检查元素是否在数组中。我的电脑有 eno1、eno2、eno3 接口,当我插入不同的东西时,比如 eno5,它再次要求我插入网络接口。

问题是,如果我只插入1,它会接受它作为有效的网络接口,事实并非如此,我想排除它。我想我可以执行不包括所有数字用户输入的额外检查,但我想知道我的错误是什么?

linux bash network-interface

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

为什么我们不能通过无线网卡轻松桥接

Debian的文档中写道:

就像您可以桥接两个有线以太网接口一样,您也可以桥接以太网接口和无线接口。但是,大多数接入点 (AP) 会拒绝源地址未通过 AP 进行身份验证的帧。由于 Linux 透明地进行以太网桥接(不修改传出或传入帧),我们必须设置一些规则来使用名为 ebtables 的程序来完成此操作。

我想知道为什么连接到有线以太网接口的机器无法通过 AP 进行身份验证。在这种情况下,桥应该正常工作,不是吗?

networking bridge access-point network-interface

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