IPoE DHCPACK и malformed Tx packet detected and dropped, LVMMC:0x1

Bug reports
crowbar
Posts: 8
Joined: 24 Jan 2020, 15:00

IPoE DHCPACK и malformed Tx packet detected and dropped, LVMMC:0x1

Post by crowbar »

Доброго времени суток!

Не получается заставить работать accel-ppp с IPoE. Не поднимается сессия и dhcp клиент не получает IP
Обнаружил, что к клиенту не приходит DHCP ACK, но accel-ppp его генерирует.
Сервер и клиент соединены напрямую проводом.

Code: Select all

    
 18:50:01.699024 00:15:17:fa:ec:31 > ff:ff:ff:ff:ff:ff, ethertype IPv4 (0x0800), length 342: (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 328)   
    0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request from 00:15:17:fa:ec:31, length 300, xid 0x2c0d8f6f, Flags [none] (0x0000)
          Client-Ethernet-Address 00:15:17:fa:ec:31
          Vendor-rfc1048 Extensions
            Magic Cookie 0x63825363
            DHCP-Message Option 53, length 1: Discover
            Hostname Option 12, length 6: "jessie"
            Parameter-Request Option 55, length 13:
              Subnet-Mask, BR, Time-Zone, Default-Gateway
              Domain-Name, Domain-Name-Server, Option 119, Hostname
              Netbios-Name-Server, Netbios-Scope, MTU, Classless-Static-Route
              NTP
            END Option 255, length 0
            PAD Option 0, length 0, occurs 33
            
18:50:01.699944 a0:36:9f:6a:38:83 > 00:15:17:fa:ec:31, ethertype IPv4 (0x0800), length 322: (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 308)
    172.16.25.1.67 > 172.16.25.2.68: [no cksum] BOOTP/DHCP, Reply, length 280, xid 0x2c0d8f6f, Flags [none] (0x0000) 
           Your-IP 172.16.25.2
          Client-Ethernet-Address 00:15:17:fa:ec:31
          Vendor-rfc1048 Extensions
            Magic Cookie 0x63825363
            DHCP-Message Option 53, length 1: Offer
            Server-ID Option 54, length 4: 172.16.25.1
            Lease-Time Option 51, length 4: 60
            RN Option 58, length 4: 30
            Default-Gateway Option 3, length 4: 172.16.25.1
            Subnet-Mask Option 1, length 4: 255.255.255.0
            Domain-Name-Server Option 6, length 4: 1.1.1.1
            END Option 255, length 0
            
18:50:01.700494 00:15:17:fa:ec:31 > ff:ff:ff:ff:ff:ff, ethertype IPv4 (0x0800), length 342: (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 328)
    0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request from 00:15:17:fa:ec:31, length 300, xid 0x2c0d8f6f, Flags [none] (0x0000)
          Client-Ethernet-Address 00:15:17:fa:ec:31
          Vendor-rfc1048 Extensions
            Magic Cookie 0x63825363
            DHCP-Message Option 53, length 1: Request
            Server-ID Option 54, length 4: 172.16.25.1
            Requested-IP Option 50, length 4: 172.16.25.2
            Hostname Option 12, length 6: "jessie"
            Parameter-Request Option 55, length 13:
              Subnet-Mask, BR, Time-Zone, Default-Gateway
              Domain-Name, Domain-Name-Server, Option 119, Hostname
              Netbios-Name-Server, Netbios-Scope, MTU, Classless-Static-Route
              NTP
            END Option 255, length 0
            PAD Option 0, length 0, occurs 21            
       
       
  18:50:01.701026 a0:36:9f:6a:38:83 > 00:15:17:fa:ec:31, ethertype IPv4 (0x0800), length 322: (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 308)
    172.16.25.1.67 > 172.16.25.2.68: [no cksum] BOOTP/DHCP, Reply, length 280, xid 0x2c0d8f6f, Flags [none] (0x0000)             Your-IP 172.16.25.2
          Client-Ethernet-Address 00:15:17:fa:ec:31
          Vendor-rfc1048 Extensions
            Magic Cookie 0x63825363
            DHCP-Message Option 53, length 1: ACK
            Server-ID Option 54, length 4: 172.16.25.1
            Lease-Time Option 51, length 4: 60
            RN Option 58, length 4: 30
            Default-Gateway Option 3, length 4: 172.16.25.1
            Subnet-Mask Option 1, length 4: 255.255.255.0
            Domain-Name-Server Option 6, length 4: 1.1.1.1
            END Option 255, length 0             
      


Дальше повторяются request и ack и затем вновь discover offer

На клиент все прилетает кроме ACK


Вот лог акселя

Code: Select all

[2020-01-24 18:50:01.699] eth3.4004: : recv [DHCPv4 Discover xid=6f8f0d2c chaddr=00:15:17:fa:ec:31 <Message-Type Discover> <Host-Name jessie> <Request-List Subnet,Broadcast,Time-Offset,Router,Domain-Name,DNS,119,Host-Name,44,47,MTU,Classless-Route,NTP>]
[2020-01-24 18:50:01.699] ipoe0: 0000000001b8a090: create interface ipoe0 parent eth3.4004
[2020-01-24 18:50:01.699] ipoe0: 0000000001b8a090: (null): authentication succeeded
[2020-01-24 18:50:01.699] ipoe0: 0000000001b8a090: send [DHCPv4 Offer xid=6f8f0d2c yiaddr=172.16.25.2 chaddr=00:15:17:fa:ec:31 <Message-Type Offer> <Server-ID 172.16.25.1> <Lease-Time 60> <T1 30> <Router 172.16.25.1> <Subnet 255.255.255.0> <DNS 1.1.1.1>]
[2020-01-24 18:50:01.700] ipoe0: 0000000001b8a090: recv [DHCPv4 Request xid=6f8f0d2c chaddr=00:15:17:fa:ec:31 <Message-Type Request> <Server-ID 172.16.25.1> <Request-IP 172.16.25.2> <Host-Name jessie> <Request-List Subnet,Broadcast,Time-Offset,Router,Domain-Name,DNS,119,Host-Name,44,47,MTU,Classless-Route,NTP>]
[2020-01-24 18:50:01.700] ipoe0: 0000000001b8a090: ipoe: activate session
[2020-01-24 18:50:01.700] ipoe0: 0000000001b8a090: ipoe: session started
[2020-01-24 18:50:01.700] ipoe0: 0000000001b8a090: send [DHCPv4 Ack xid=6f8f0d2c yiaddr=172.16.25.2 chaddr=00:15:17:fa:ec:31 <Message-Type Ack> <Server-ID 172.16.25.1> <Lease-Time 60> <T1 30> <Router 172.16.25.1> <Subnet 255.255.255.0> <DNS 1.1.1.1>]
[2020-01-24 18:50:05.370] ipoe0: 0000000001b8a090: recv [DHCPv4 Request xid=6f8f0d2c chaddr=00:15:17:fa:ec:31 <Message-Type Request> <Server-ID 172.16.25.1> <Request-IP 172.16.25.2> <Host-Name jessie> <Request-List Subnet,Broadcast,Time-Offset,Router,Domain-Name,DNS,119,Host-Name,44,47,MTU,Classless-Route,NTP>]
[2020-01-24 18:50:05.370] ipoe0: 0000000001b8a090: send [DHCPv4 Ack xid=6f8f0d2c yiaddr=172.16.25.2 chaddr=00:15:17:fa:ec:31 <Message-Type Ack> <Server-ID 172.16.25.1> <Lease-Time 60> <T1 30> <Router 172.16.25.1> <Subnet 255.255.255.0> <DNS 1.1.1.1>]
[2020-01-24 18:50:14.462] ipoe0: 0000000001b8a090: recv [DHCPv4 Discover xid=ad0516b chaddr=00:15:17:fa:ec:31

Пробовал разные ядра, и в одном из них увидел:
в syslog сыпятся сообщения

Code: Select all

 Jan 24 18:50:05 nas03 kernel: [ 3419.396892] igb 0000:01:00.3 eth3: malformed Tx packet detected and dropped, LVMMC:0x50000001
Время таких сообщений совпадает всегда совпадает с временем DHCP ACK
Ядро
Linux bras 4.19.0-6-amd64 #1 SMP Debian 4.19.67-2+deb10u2 (2019-11-11) x86_64 GNU/Linux

Драйвер
ethtool -i eth3
driver: igb
version: 5.4.0-k
firmware-version: 1.63, 0x80000a58
expansion-rom-version:
bus-info: 0000:01:00.3
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: yes

Пробовал выключать checksumming

Features for eth3:
rx-checksumming: off
tx-checksumming: off

Разные версии драйвера тоже не помогают, пропадают только сообщения malformed , но ACK так и не прилетает. Подобная сетевушка и другое железо -тоже не работают.
Однако isc-dhcp-server прекрасно выдает IP адреса и ACK долетает.

Попробовал запустить на десктопном компьютере с драйвером e1000 и заработало!

Подскажите, плз, куда копать, что бы заставить работать на igb ?

Версия
accel-cmd 9508266608ad4bf4dd4a8ff8675849040fa82e39

Конфиг

Code: Select all


[ipoe]
noauth=1
verbose=1
lease-time=60
renew-time=30
max-lease-time=120
shared=1
ifcfg=1
mode=L2
start=dhcpv4
interface=eth3.4004,range=172.16.25.0/24
gw-ip-address=172.16.25.1

[dns]
dns1=1.1.1.1

dimka88
Posts: 866
Joined: 13 Oct 2014, 05:51
Contact:

Re: IPoE DHCPACK и malformed Tx packet detected and dropped, LVMMC:0x1

Post by dimka88 »

Доброго времени суток, а какая версия accel-ppp используется?

Code: Select all

accel-cmd -V
На стороне клиента пробовали снять трафик Wireshark/tcpdump?
Я бы вытащил последние драйвера https://sourceforge.net/projects/e1000/ ... /5.3.5.42/
И после установки и перезагрузки проверить, правильные ли модуля подтягиваются, так как скорее всего нужно обновлять initramfs.
crowbar
Posts: 8
Joined: 24 Jan 2020, 15:00

Re: IPoE DHCPACK и malformed Tx packet detected and dropped, LVMMC:0x1

Post by crowbar »

На стороне клиента в дампе трафике нет DHCP ACK :(
Версия accel-ppp

Code: Select all

accel-cmd -V
accel-cmd 9508266608ad4bf4dd4a8ff8675849040fa82e39
Драйвер по ссылке пробовал, перезагружал, убеждался, что используется именно он. Сетевушка intel i350
В syslog сообщение malformed Tx packet detected and dropped пропадало, но dhcp ack так и не прилетал.
Как я уже говорил выше, что смена сетевушки и железа в целом - тоже не помогло.

С десктопом, где IPoE поднялось, не честный тест получился. Версия accel оказалась

Code: Select all

accel-cmd 384d6a8a17d876dc4639e29d2baf4b223a8eaadf
И напомню, что на десктопе другая сетевушка и используемый драйвер

Code: Select all

driver: e1000e
version: 2.3.2-k
firmware-version: 2.1-0

Стоит попробовать эту версию с igb ? или же на десктопе до мастера апдетнуться и попробовать ?
dimka88
Posts: 866
Joined: 13 Oct 2014, 05:51
Contact:

Re: IPoE DHCPACK и malformed Tx packet detected and dropped, LVMMC:0x1

Post by dimka88 »

Попробовать до мастера, там где работала старая версия.
Там где не работает, нет ли возможности поставить для теста не intel карту?
Я думаю смогу провести тесты на 82576/82571 на следующей неделе. А с сетевыми i3XX такое когда то встречалось.
crowbar
Posts: 8
Joined: 24 Jan 2020, 15:00

Re: IPoE DHCPACK и malformed Tx packet detected and dropped, LVMMC:0x1

Post by crowbar »

Все карты только интел. Есть x710, это i40e драйвер, попробую на них и напишу результат.

Еще нашел отличие с isc dhcp server, который работает в любом из выше описанных системах - это порядок options в DHCP ACK и везде используется udp checksum
В accel же чексумы не используются.
dimka88
Posts: 866
Joined: 13 Oct 2014, 05:51
Contact:

Re: IPoE DHCPACK и malformed Tx packet detected and dropped, LVMMC:0x1

Post by dimka88 »

Я в коде igb заметил интересности, и теперь становится понятно почему на 82576 я не встречал подобного

Code: Select all

/* Check LVMMC register on i350/i354 only */
	if ((adapter->hw.mac.type == e1000_i350) ||
	    (adapter->hw.mac.type == e1000_i354))
		igb_check_lvmmc(adapter);
А есть возможность показать диалог(dump) от ISС DHCP?
crowbar
Posts: 8
Joined: 24 Jan 2020, 15:00

Re: IPoE DHCPACK и malformed Tx packet detected and dropped, LVMMC:0x1

Post by crowbar »

Вот дамп от ISC DHCP (с серверной части)
ACK на клиент прилетает, IP получает. В syslog на сервере никаких malformed-ов
Спойлер

Code: Select all

23:05:01.598599 00:15:17:fa:ec:31 > ff:ff:ff:ff:ff:ff, ethertype IPv4 (0x0800), length 342: (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 328)
    0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request from 00:15:17:fa:ec:31, length 300, xid 0xdfd59900, Flags [none] (0x0000)
	  Client-Ethernet-Address 00:15:17:fa:ec:31
	  Vendor-rfc1048 Extensions
	    Magic Cookie 0x63825363ф
	    DHCP-Message Option 53, length 1: Discover
	    Hostname Option 12, length 6: "jessie"
	    Parameter-Request Option 55, length 13: 
	      Subnet-Mask, BR, Time-Zone, Default-Gateway
	      Domain-Name, Domain-Name-Server, Option 119, Hostname
	      Netbios-Name-Server, Netbios-Scope, MTU, Classless-Static-Route
	      NTP
	    END Option 255, length 0
	    PAD Option 0, length 0, occurs 33

3:05:01.598748 a0:36:9f:6a:38:83 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 42: Ethernet (len 6), IPv4 (len 4), Request who-has 172.16.25.2 tell 172.16.25.1, length 28
23:05:02.598856 a0:36:9f:6a:38:83 > 00:15:17:fa:ec:31, ethertype IPv4 (0x0800), length 342: (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 328)
    172.16.25.1.67 > 172.16.25.2.68: [udp sum ok] BOOTP/DHCP, Reply, length 300, xid 0xdfd59900, Flags [none] (0x0000)
	  Your-IP 172.16.25.2
	  Client-Ethernet-Address 00:15:17:fa:ec:31
	  Vendor-rfc1048 Extensions
	    Magic Cookie 0x63825363
	    DHCP-Message Option 53, length 1: Offer
	    Server-ID Option 54, length 4: 172.16.25.1
	    Lease-Time Option 51, length 4: 120
	    RN Option 58, length 4: 30
	    Subnet-Mask Option 1, length 4: 255.255.255.0
	    Default-Gateway Option 3, length 4: 172.16.25.1
	    Domain-Name-Server Option 6, length 4: 1.1.1.1
	    END Option 255, length 0
	    PAD Option 0, length 0, occurs 20
23:05:02.599418 00:15:17:fa:ec:31 > ff:ff:ff:ff:ff:ff, ethertype IPv4 (0x0800), length 342: (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 328)
    0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request from 00:15:17:fa:ec:31, length 300, xid 0xdfd59900, Flags [none] (0x0000)
	  Client-Ethernet-Address 00:15:17:fa:ec:31
	  Vendor-rfc1048 Extensions
	    Magic Cookie 0x63825363
	    DHCP-Message Option 53, length 1: Request
	    Server-ID Option 54, length 4: 172.16.25.1
	    Requested-IP Option 50, length 4: 172.16.25.2
	    Hostname Option 12, length 6: "jessie"
	    Parameter-Request Option 55, length 13: 
	      Subnet-Mask, BR, Time-Zone, Default-Gateway
	      Domain-Name, Domain-Name-Server, Option 119, Hostname
	      Netbios-Name-Server, Netbios-Scope, MTU, Classless-Static-Route
	      NTP
	    END Option 255, length 0
	    PAD Option 0, length 0, occurs 21
23:05:02.619975 a0:36:9f:6a:38:83 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 42: Ethernet (len 6), IPv4 (len 4), Request who-has 172.16.25.2 tell 172.16.25.1, length 28
23:05:02.634503 a0:36:9f:6a:38:83 > 00:15:17:fa:ec:31, ethertype IPv4 (0x0800), length 342: (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 328)
    172.16.25.1.67 > 172.16.25.2.68: [udp sum ok] BOOTP/DHCP, Reply, length 300, xid 0xdfd59900, Flags [none] (0x0000)
	  Your-IP 172.16.25.2
	  Client-Ethernet-Address 00:15:17:fa:ec:31
	  Vendor-rfc1048 Extensions
	    Magic Cookie 0x63825363
	    DHCP-Message Option 53, length 1: ACK
	    Server-ID Option 54, length 4: 172.16.25.1
	    Lease-Time Option 51, length 4: 120
	    RN Option 58, length 4: 30
	    Subnet-Mask Option 1, length 4: 255.255.255.0
	    Default-Gateway Option 3, length 4: 172.16.25.1
	    Domain-Name-Server Option 6, length 4: 1.1.1.1
	    END Option 255, length 0
	    PAD Option 0, length 0, occurs 20
23:05:03.643976 a0:36:9f:6a:38:83 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 42: Ethernet (len 6), IPv4 (len 4), Request who-has 172.16.25.2 tell 172.16.25.1, length 28
23:05:03.644371 00:15:17:fa:ec:31 > a0:36:9f:6a:38:83, ethertype ARP (0x0806), length 60: Ethernet (len 6), IPv4 (len 4), Reply 172.16.25.2 is-at 00:15:17:fa:ec:31, length 46
crowbar
Posts: 8
Joined: 24 Jan 2020, 15:00

Re: IPoE DHCPACK и malformed Tx packet detected and dropped, LVMMC:0x1

Post by crowbar »

Небольшой апдейт

Апдейтнул до мастера, там где e1000e - работает.

Там где igb попробовал 5ое ядро 5.3.13
Дайвер там

Code: Select all

driver: igb
version: 5.6.0-k
firmware-version: 1.63, 0x80000a58
Не работает, проблема там другая:

Code: Select all

[2020-01-26 18:13:26.854] ipoe0: 0000000001b8b873: ipoe: activate session
[2020-01-26 18:13:26.854] libnetlink: RTNETLINK answers: Invalid argument
[2020-01-26 18:13:26.854] ipoe0: 0000000001b8b873: ipoe: nl_modify: Invalid argument
[2020-01-26 18:13:26.854] ipoe0: 0000000001b8b873: terminate
[2020-01-26 18:13:26.854] ipoe0: 0000000001b8b873: ipoe: session finished
[2020-01-26 18:13:29.701] send [DHCPv4 Nak xid=72820789 chaddr=00:15:17:fa:ec:31 <Message-Type Nak>]
А вот NAK до клиента долетает
dimka88
Posts: 866
Joined: 13 Oct 2014, 05:51
Contact:

Re: IPoE DHCPACK и malformed Tx packet detected and dropped, LVMMC:0x1

Post by dimka88 »

На счет ядер выше 5.1 известная проблема, думаю в ближайшие недели будет поправлено.
dimka88
Posts: 866
Joined: 13 Oct 2014, 05:51
Contact:

Re: IPoE DHCPACK и malformed Tx packet detected and dropped, LVMMC:0x1

Post by dimka88 »

В мастер ветке присутствует исправление, так что можно запускать на новых ядрах.
Post Reply