
Tenho um dispositivo UDP simples (ENC28J60) conectado ao meu computador com um cabo direto. O dispositivo configurado para enviar pacotes UDP para 192.168.133.1 IP, porta 6661.
O nome da interface do computador, sistema operacional Fedora 22, é enp7s0. Quando um endereço IP atribuído à interface, o tcpdump trava, o netcat fica em silêncio. Quando nenhum endereço IP é atribuído à interface, o netcat é silencioso (sem saída), o tcpdump recebe pacotes.
Os pacotes realmente vêm de um dispositivo, posso ver com o tcpdump, apenas quando a interface está ATIVADA, mas nenhum endereço IP atribuído.
Primeiro tente abrir a interface com um endereço IP.:
[root@d7520 ~]# nmcli connection up toArd
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/20)
[root@d7520 ~]# ip a s dev enp7s0
2: enp7s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 74:86:7a:1e:e0:85 brd ff:ff:ff:ff:ff:ff
inet 192.168.133.1/24 brd 192.168.133.255 scope global enp7s0
valid_lft forever preferred_lft forever
inet6 fe80::7686:7aff:fe1e:e085/64 scope link
valid_lft forever preferred_lft forever
Tente com netcat e tcpdump. Nenhuma resposta. tcpdump trava.
[root@d7520 ~]# ncat -u -l 6661
^C
[root@d7520 ~]# tcpdump -vvv -i enp7s0 -X
tcpdump: listening on enp7s0, link-type EN10MB (Ethernet), capture size 262144 bytes
[root@d7520 ~]# nc -v -l -u 6661
Ncat: Version 6.47 ( http://nmap.org/ncat )
Ncat: Listening on :::6661
Ncat: Listening on 0.0.0.0:6661
^C
Agora, tente remover o endereço IP. tcpdump obteve os pacotes UDP, mas o netcat ainda está em silêncio.:
[root@d7520 ~]# nmcli connection down toArd
Connection 'toArd' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/21)
[root@d7520 ~]# ip a s dev enp7s0
2: enp7s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 74:86:7a:1e:e0:85 brd ff:ff:ff:ff:ff:ff
[root@d7520 ~]# tcpdump -vvv -i enp7s0 -X
tcpdump: listening on enp7s0, link-type EN10MB (Ethernet), capture size 262144 bytes
13:41:39.423449 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 37)
192.168.133.2.6660 > 192.168.133.1.6661: [udp sum ok] UDP, length 9
0x0000: 4500 0025 0000 4000 4011 af73 c0a8 8502 E..%..@[email protected]....
0x0010: c0a8 8501 1a04 1a05 0011 0630 7465 7374 ...........0test
0x0020: 2031 3233 0000 0000 0000 0000 0000 .123..........
^C
1 packet captured
1 packet received by filter
0 packets dropped by kernel
Responder1
Não tenho certeza se esse é o seu problema, mas por que você está usando nmcli
em primeiro lugar? nmcli
é a interface de linha de comando do gerenciador de rede, que émuito maisdo que você esperava ao tentar abrir suas interfaces.
Se eu fosse você, procederia da seguinte forma. Como sudo
:
service network-manager stop # halt NM
ip link set dev enp7s0 down # bring the interface down, in order to...
ip addr flush dev enp7s0 # ... get rid of its ip address
Ou uma configuração manual...
ip addr add 192.168.133.133/24 dev enp7s0 # we give it a brand new address...
ip link set dev enp7s0 up # now we try again...
ip route add default via 192.168.133.1 # and a gateway
ou automático:
ip link set dev enp7s0 up
dhclient -v enp7s0
(Dependendo da sua distribuição, pode ser necessário omitir a -v
bandeira).
Agora eu tentaria novamente, e ambos tcpdump
deveriam nc
estar funcionando.