IPOE dont send ip for vlan over ethx - Radius auth

Hello!
I would like to take some doubts about the IPOE authentication method using freeradius.
I am having a problem with authentication as follows.
If I specify the authentication interface as ‘eth0’ and the client’s mac in this set, I cannot receive ip via dhcp. Ex:

service {
 ipoe-server {
     authentication {
         interface eth0 {
             mac-address CC:2D:E0:06:28:62 {
             }

If you specify in the eth0 interface and assign the vlan, I also cannot authenticate. Ex:

   service {
     ipoe-server {
       authentication {
         interface eth0 {
             mac-address CC:2D:E0:06:28:62 {
                 vlan-id 311
             }

But if you create the authentication directly in the created vlan (automatically) the client authenticates.

However, the username and password is still eth0.312 / eth0.312.
Does anyone know how to tell me why I’m not able to authenticate directly through the eth0 interface?
Is there a possibility to change the username and password by assigning the client’s mac?

vyos@vyos:/$ show config
interfaces {
    ethernet eth0 {
        address 10.4.4.1/30
        hw-id 00:e0:4c:14:a5:19
        vif 100 {
        }
    }
    ethernet eth1 {
        address 10.2.3.78/25
        hw-id 00:1c:25:47:f5:60
    }
    loopback lo {
    }
}
protocols {
    static {
        route 0.0.0.0/0 {
            next-hop 10.2.3.1 {
                distance 1
            }
        }
    }
}
service {
    ipoe-server {
        authentication {
            interface eth0 {
                mac-address CC:2D:E0:06:28:62 {
                }
            }
            mode radius
            radius {
                server 10.2.3.36 {
                    key ****************
                    port 2112
                }
            }
        }
        interface eth0 {
            client-subnet 100.64.0.0/20
            network vlan
            vlan-range 300-330
        }
        name-server 8.8.8.8
        name-server 1.1.1.1
    }
    ssh {
        port 22
    }
}
system {
    config-management {
        commit-revisions 100
    }
    console {
        device ttyS0 {
            speed 115200
        }
    }
    host-name vyos
    ip {
    }
    login {
        user vyos {
            authentication {
                encrypted-password ****************
                plaintext-password ****************
            }
        }
    }
    ntp {
        server 0.pool.ntp.org {
        }
        server 1.pool.ntp.org {
        }
        server 2.pool.ntp.org {
        }
    }
    syslog {
        global {
            facility all {
                level info
            }
            facility protocols {
                level debug
            }
        }
    }
}

Hello @bgppro, you don’t need to set service ipoe-server authentication interface ... if you use radius. This used only for the local authentication.
ipoe-server interface eth0 network vlan say that you want to use Vlan-Per-User, and username should be Username:ethX.vlanX Password: ethX.vlanX, because only one user should be in this vlan

Hi Dmitry, thank’s.
I pass the value

Tunnel-Private-Group-ID
Vlan-Per-User show error in freeradius.
I get ip, route and dns.
And in show ipoe-server sessions command show this:

vyos@vyos:~$ show ipoe-server sessions
ifname | username | calling-sid | ip | rate-limit | type | comp | state | uptime
--------+----------+-------------+----+------------+------+------+-------+--------

Can you tell me where am I going wrong? Or what parameters should I pass via freeradius?

Thank you thank you very much.