标签: linux-networking

为特定源端口和目标端口的所有协议设置 iptables 规则

是否可以添加允许特定源端口和目标端口的所有协议的 IPTABLES 规则?我尝试了以下方法,但没有成功。

iptables -I FORWARD 1 -s 172.27.0.254/255.255.255.255 -d 0.0.0.0/0.0.0.0 -p 0 --sport 0:65535 --dport 1191:1191 -j ACCEPT

iptables error: unknown option `--sport`
Run Code Online (Sandbox Code Playgroud)

如有任何意见,我们将不胜感激。

iptables linux-networking

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

如何在 Linux 中监控每个用户的网络使用情况?

我是一个 openSUSE linux 服务器的管理员,我们公司很多人都在使用该服务器。

今天我们发现昨天有一个用户使用了过多的带宽,管理部门必须注意到哪个用户这样做了。

我在不同的网站和论坛等中进行了搜索,我发现的ifconfig只是ifstat显示整个网络使用情况。我还安装了一个工具vnstat来启动网络监控和日志记录,以防止将来可能发生的任何进一步问题。

最后,我想知道是否有任何解决方案可以找出每个用户过去特定时间的网络使用情况。或者Linux中有一个日志文件负责跟踪用户的网络使用情况。

log-files network-monitoring linux-networking

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

将 VLAN 标记添加到特定 UDP 端口流量

我正在 Ubuntu12.04 中运行我编写的一个应用程序,它执行一些远程交换机管理。我只有一个 NIC 连接到托管交换机网络,eth0 设置为 IPv4 10.0.0.1/24。这个 IPv4 地址是这台 Ubuntu 机器可以使用的唯一地址,因为这是分配给 Ubuntu 机器的唯一“全局”可路由地址(由于某些网络管理,而不是由于技术问题......)

我需要交换机管理流量(通过 SSH 的 NetConf,使用 UDP 端口 830)来包含一个带有 VLAN ID 444 的 802.1q VLAN 标签),在发送 NetConf 帧时,也会收到带有此标签的回复。所有其他流量(http、ftp、dhcp、snmp 等)将使用没有 VLAN 标记的 eth0。

我尝试在 eth0 上使用 VLAN 接口 eth0.444,但似乎发送的流量不包含 VLAN 标记。

我可以(以及如何)使用 ebtables/iptables 将特定的 VLAN 标记添加到特定的 UDP 端口流量?ebtables/iptables 解决方案是否也适用于接收路径?

谢谢!

大卫

iptables vlan linux-networking ubuntu-12.04

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

使用 iptables 进行端口转发

我得到了lo127.0.0.1)和eth0172.17.0.8)。我想将登陆的数据包重定向127.0.0.1:80172.17.42.1:80(从 路由eth0)。

我试过

iptables -t nat -A OUTPUT -p tcp --dport 80 -d 127.0.0.1 -j DNAT --to 172.17.42.1:80
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时我没有curl localhost:80得到任何回应,当我这样做时curl 172.17.42.1:80它就起作用了。

networking iptables port-forwarding linux-networking dnat

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

路由器和 DHCP 服务器上的不同子网掩码

今天遇到了一些有趣的事情,我仍然在摸索为什么会发生这种情况。我试图通过将网络掩码从 /24 更改为 /20 来增加 dhcp 服务器可用的 ip 地址数量。

这是第一个场景,我将路由器的子网掩码更改为 /20 以匹配我的 dhcp 服务器的子网掩码。但是,我没有更改任何具有静态 ip 的工作站的子网掩码,它们保持在 /24。我将一些工作站和无线设备连接到网络,所有这些都得到了正确的范围,/20 并且能够访问网络。

我对第一个场景的问题是:不是所有设备都应该具有相同的子网掩码才能工作吗?为什么具有静态 IP 地址和网络掩码 /24 的工作站仍在工作?

然后我尝试了第二种情况。这次路由器的子网掩码保持在/24,我只将DHCP服务器的子网掩码修改为/20。结果?具有子网掩码 /24 的静态 IP 的设备可以工作。使用子网掩码 /20 提供动态 IP 的设备无法访问网络。我的问题是:如果前面的场景适用于两个子网。为什么在这种情况下它没有?

我不确定这是否值得一提,但 DHCP 服务器正在运行 ubuntu dhcp 服务器。

networking router linux-networking dhcp-server

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

从用户角度看 vlan 和 ip 别名的区别

我正在阅读有关vlanGNU/Linux 上的信息以及如何管理它。

每当我需要将第二个网络添加到同一个物理网卡时,我都会这样做

ifconfig eth0:test 192.168.66.1
Run Code Online (Sandbox Code Playgroud)

192.168.66.0/24有了它我也可以访问。

现在,在阅读了有关管理 VLAN 的内容后,我发现我可以做到

vconfig add eth0 700
ifconfig eth0.700 192.168.66.1
Run Code Online (Sandbox Code Playgroud)

我知道 802.1q 也标记以太网帧,但从用户的角度来看,有什么区别吗?何时应使用 ip 别名以及何时使用 802.1q?

linux-networking

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

Samba 4:加入了域,但所有用户都映射到没有人,并且无法从 Windows 客户端访问共享

我有一个 Debian/Jessie Samba 4.2.14 作为 AD 成员运行。ADC是Windows2008R2服务器。加入工作没有问题。

# net ads testjoin
Join is OK
Run Code Online (Sandbox Code Playgroud)

wbinfo -uwbinfo -g完美运行并按预期提供来自 AD 的用户和组列表。wbinfo -i <user>也有效:

# wbinfo -i TESTAD\\testuser
TESTAD\testuser:*:4294967295:4294967295:testuser:/home/TESTAD/testuser:/bin/false
Run Code Online (Sandbox Code Playgroud)

编辑:这里有问题,因为wbinfo -i将所有用户和组映射到 id 4294967295,正如@TheSkunk 所说,2^32 -1。

编辑2: wbinfo --sid-to-uid TESTAD\\testuser失败。当然,我必须明确设置一些idmap参数(默认值显然根本不起作用)但是如何设置?

编辑 3:我已将这两行添加到 smb.conf:

idmap config * : backend = tdb
idmap config * : range = 10000-30000
Run Code Online (Sandbox Code Playgroud)

现在 ?binfo -i TESTDOMAIN\testuser reports a valid id, and a different one for each and …

authentication linux-networking winbind samba4

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

将传出流量转发到不同的端口

我的 linux 盒子中的应用程序正在连接到“ip.example.com”。

“ip.example.com”的 IP 地址在 /etc/hosts 中定义为

10.23.22.1 ip.example.com
Run Code Online (Sandbox Code Playgroud)

在目标 IP 上,服务正在端口 8080 上运行。但是,应用程序尝试连接10.23.22.1:80并失败。无法修改目标 IP 或在本地运行的应用程序。

我想将传出流量从 到 转发10.23.11.1:8010.23.22.1:8080我的本地框。

这可以在 ip 表中实现吗?

linux nat iptables linux-networking

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

将网桥流量路由到 VPN 隧道(AWS 客户端 VPN 终端节点)

我在eth0&之间创建了桥梁wlan0。以下是ifconfig

root@ubuntu:~ $ ifconfig
br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.24.11.15  netmask 255.255.255.0  broadcast 10.24.11.255
        inet6 fe80::1fd4:f47a:59d2:1de8  prefixlen 64  scopeid 0x20<link>
        ether b8:27:eb:8e:38:ee  txqueuelen 1000  (Ethernet)
        RX packets 2571  bytes 308138 (300.9 KiB)
        RX errors 0  dropped 230  overruns 0  frame 0
        TX packets 2511  bytes 289807 (283.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether b8:27:eb:db:6d:bb  txqueuelen 1000  (Ethernet)
        RX packets 6268  bytes 1641477 (1.5 MiB) …
Run Code Online (Sandbox Code Playgroud)

networking vpn routing openvpn linux-networking

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

Docker - 没有出站流量/网桥仅在混杂模式下工作

在过去的一周里,我一直在为一个非常奇怪的网络问题而苦苦挣扎。总之,除非我运行tcpdump -i br-XXXXX,否则我的容器无法访问互联网(这使网桥进入混杂模式)

我使用 Compose 提出了两个容器:

version: '3'
services:
  seafile:
    build: ./seafile/build
    container_name: seafile
    restart: always
    ports:
      - 8080:80
    networks:
      seafile_net:
        ipv4_address: 192.168.0.2
    volumes:
      - /mnt/gluster/files/redacted/data:/shared
    environment:
      - DB_HOST=10.200.7.100
      - DB_PASSWD=redacted
      - TIME_ZONE=America/Chicago
    depends_on:
      - seafile-memcached
  seafile-memcached:
    image: memcached:1.5.6
    container_name: seafile-memcached
    restart: always
    networks:
      seafile_net:
        ipv4_address: 192.168.0.3
    entrypoint: memcached -m 256
networks:
  seafile_net:
    driver: bridge
    ipam:
      driver: default
      config:
        - subnet: 192.168.0.0/24
Run Code Online (Sandbox Code Playgroud)

运行的容器:

$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                  NAMES
93b1b773ad4e        docker_seafile      "/sbin/my_init -- …
Run Code Online (Sandbox Code Playgroud)

linux linux-networking docker centos7 docker-compose

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