Hi Seunghwan,

Sorry for my late response (had two weeks of holiday).

Your BFD protocol block doesn't mention any interfaces. The documentation states (see https://bird.network.cz/?get_doc&v=20&f=bird-6.html#ss6.2) that shouldn't be needed however:

Note that contrary to the behavior of interface definitions of other protocols, BFD protocol would accept sessions (in default configuration) even on interfaces not covered by such definitions.

That would suggest your configuration is valid (as far as I can tell) so you're either hitting a bug or I misinterpreted the documentation.

What you might do is adding the interfaces carrying the BGP packets anyway. Feels a little like a workaround, but it might help you.

Adding could be as simple as:

protocol bfd {
        interface "eth0" {
        };
}

(In this example your multihop configuration should be added again, obviously.)

Regards,
Kees

On 03-08-2020 03:56, seunghwan hwang wrote:
Hello K.

Sorry, I'm late.
Here is my full configuration

===================================================================

log "/var/log/bird/bird.log"  { debug, trace, info, remote, warning, error, auth, fatal, bug };
debug protocols all;

# Loopback IP
router id [bird-server lo ip];


protocol kernel {
        persist;                # Don't remove routes on bird shutdown
        scan time 20;           # Scan kernel routing table every 20 seconds
        import none;            # Default is import all
        export all;             # Default is export none
        merge paths on;         # Enable ECMP Multi path.
}

protocol direct {
        interface "lo";
}

protocol device {
        scan time 10;           # Scan interfaces every 10 seconds
}

protocol bfd {
        multihop {
            min rx interval 300 ms;
            min tx interval 300 ms;
            multiplier 3;
        };
}

protocol static {

        route [swich A router-id] via [interface IP to switch A];
        route [swich B router-id] via [interface IP to switch B] ;
}

# BGP Configuration
protocol bgp as1 {
        import all;
        export all;

        # local Loopback IP
        # neighbor (tchy loopback ip)
        local [bird-server lo ip] as 65001;
        neighbor [swich A router-id] as 65001;
        hold time 30;
        enable route refresh off;
        bfd on;
}

protocol bgp as2 {
        import all;
        export all;

        local [bird-server lo ip] as 65001;
        neighbor [swich B router-id] as 65001;
        hold time 30;
        enable route refresh off;
        bfd on;
}

===================================================================  

Please check  it.

Regards.

2020년 7월 29일 (수) 오후 4:46, Kees Meijs | Nefos <kees@nefos.nl>님이 작성:
Hi,

Yes we have; multiple times.

Could you please provide a full configuration? (Feel free to remove
passwords and such, obviously.)

Cheers,
Kees

On 29-07-2020 09:45, seunghwan hwang wrote:
> Is not working.
> Have you ever rebooted(# shutdown -r now) with your settings?
> Still, only the BGP is established and the BFD state remains in Init.
>