Giter VIP home page Giter VIP logo

Comments (3)

pqarmitage avatar pqarmitage commented on June 10, 2024

It appears that your keepalived is build on a system with Linux 4.15.7 kernel headers, but you are running on a kernel with 4.14.67 headers. This is not valid, since keepalived determines what kernel functionality is available based on the kernel headers it is built against. It may not matter in this case, but it might be the cause of your problem.

Another potential issue is that the version of keepalived you are running is very nearly 4 years old, and we might have fixed the issue between then and now (however, I have not seen this problem before and so it is unlikely).

What is most interesting is the log message:
Fri Oct 6 03:08:35 2023: Netlink: error: Cannot allocate memory(12), type=RTM_NEWADDR(20), seq=1696586922, pid=0
This would seem to suggest that the kernel is not able to allocate memory, which in turn suggests that your system is in a very bad way. I can well imagine that keepalived may not handle a failure to add a link local address to a VMAC, since we have probably never seen an ENOMEM error at that point.

I think you need to resolve the Netlink "Cannot allocate memory" error, and ensure that keepalived is not built with newer kernel than it is being run on. I will try some test code to see what happens if a link-local address is not added, and see if I can generate a segfault. It would also be helpful if you could provide a copy of your configuration.

from keepalived.

Anj1Krish avatar Anj1Krish commented on June 10, 2024

Thanks for looking into the issue . Copy of the configs given below:

global_defs
{
vrrp_version 3
enable_script_security
script_user root
}
vrrp_sync_group VI_1_3200_la7.3200
{
group {
VI_1_3200_6_la7.3200
VI_1_3200_4_la7.3200
}
}
vrrp_instance VI_1_3200_6_la7.3200
{
interface la7.3200
virtual_router_id 1
use_vmac
garp_master_refresh 60
priority 51
advert_int 1
virtual_ipaddress
{
1032::100
}
}
vrrp_instance VI_1_3200_4_la7.3200
{
interface la7.3200
virtual_router_id 1
use_vmac
garp_master_refresh 60
priority 51
advert_int 1
virtual_ipaddress
{
132.33.0.10
}
}
vrrp_sync_group VI_1_3201_la7.3201
{
group {
VI_1_3201_6_la7.3201
VI_1_3201_4_la7.3201
}
}
vrrp_instance VI_1_3201_6_la7.3201
{
interface la7.3201
virtual_router_id 1
use_vmac
garp_master_refresh 60
priority 51
advert_int 1
virtual_ipaddress
{
1033::100
}
}
vrrp_instance VI_1_3201_4_la7.3201
{
interface la7.3201
virtual_router_id 1
use_vmac
garp_master_refresh 60
priority 51
advert_int 1
virtual_ipaddress
{
133.34.0.10
}
}
vrrp_sync_group VI_1_3202_la7.3202
{
group {
VI_1_3202_6_la7.3202
VI_1_3202_4_la7.3202
}
}
vrrp_instance VI_1_3202_6_la7.3202
{
interface la7.3202
virtual_router_id 1
use_vmac
garp_master_refresh 60
priority 52
advert_int 1
virtual_ipaddress
{
1034::100
}
}
vrrp_instance VI_1_3202_4_la7.3202
{
interface la7.3202
virtual_router_id 1
use_vmac
garp_master_refresh 60
priority 52
advert_int 1
virtual_ipaddress
{
134.35.0.10
}
}
vrrp_sync_group VI_1_3203_la7.3203
{
group {
VI_1_3203_6_la7.3203
VI_1_3203_4_la7.3203
}
}
vrrp_instance VI_1_3203_6_la7.3203
{
interface la7.3203
virtual_router_id 1
use_vmac
garp_master_refresh 60
priority 53
advert_int 1
virtual_ipaddress
{
1035::100
}
}
vrrp_instance VI_1_3203_4_la7.3203
{
interface la7.3203
virtual_router_id 1
use_vmac
garp_master_refresh 60
priority 53
advert_int 1
virtual_ipaddress
{
135.36.0.100
}
}
vrrp_sync_group VI_2_3204_la7.3204
{
group {
VI_2_3204_6_la7.3204
VI_2_3204_4_la7.3204
}
}
vrrp_instance VI_2_3204_6_la7.3204
{
interface la7.3204
virtual_router_id 2
use_vmac
garp_master_refresh 60
priority 54
advert_int 1
virtual_ipaddress
{
1036::100
}
}
vrrp_instance VI_2_3204_4_la7.3204
{
interface la7.3204
virtual_router_id 2
use_vmac
garp_master_refresh 60
priority 54
advert_int 1
virtual_ipaddress
{
136.37.0.100
}
}
vrrp_sync_group VI_2_3205_la7.3205
{
group {
VI_2_3205_6_la7.3205
VI_2_3205_4_la7.3205
}
}
vrrp_instance VI_2_3205_6_la7.3205
{
interface la7.3205
virtual_router_id 2
use_vmac
garp_master_refresh 60
priority 55
advert_int 1
virtual_ipaddress
{
1037::100
}
}
vrrp_instance VI_2_3205_4_la7.3205
{
interface la7.3205
virtual_router_id 2
use_vmac
garp_master_refresh 60
priority 55
advert_int 1
virtual_ipaddress
{
137.38.0.100
}
}
vrrp_sync_group VI_3_3206_la7.3206
{
group {
VI_3_3206_6_la7.3206
VI_3_3206_4_la7.3206
}
}
vrrp_instance VI_3_3206_6_la7.3206
{
interface la7.3206
virtual_router_id 3
use_vmac
garp_master_refresh 60
priority 56
advert_int 1
virtual_ipaddress
{
1038::100
}
}
vrrp_instance VI_3_3206_4_la7.3206
{
interface la7.3206
virtual_router_id 3
use_vmac
garp_master_refresh 60
priority 56
advert_int 1
virtual_ipaddress
{
138.39.0.100
}
}
vrrp_sync_group VI_3_3207_la7.3207
{
group {
VI_3_3207_6_la7.3207
VI_3_3207_4_la7.3207
}
}
vrrp_instance VI_3_3207_6_la7.3207
{
interface la7.3207
virtual_router_id 3
use_vmac
garp_master_refresh 60
priority 10
advert_int 1
virtual_ipaddress
{
1039::100
}
}
vrrp_instance VI_3_3207_4_la7.3207
{
interface la7.3207
virtual_router_id 3
use_vmac
garp_master_refresh 60
priority 10
advert_int 1
virtual_ipaddress
{
139.40.0.100
}
}
vrrp_sync_group VI_4_3208_la7.3208
{
group {
VI_4_3208_6_la7.3208
VI_4_3208_4_la7.3208
}
}
vrrp_instance VI_4_3208_6_la7.3208
{
interface la7.3208
virtual_router_id 4
use_vmac
garp_master_refresh 60
priority 110
advert_int 1
virtual_ipaddress
{
2047::100
}
}
vrrp_instance VI_4_3208_4_la7.3208
{
interface la7.3208
virtual_router_id 4
use_vmac
garp_master_refresh 60
priority 110
advert_int 1
virtual_ipaddress
{
140.41.0.100
}
}
vrrp_sync_group VI_4_3209_la7.3209
{
group {
VI_4_3209_6_la7.3209
VI_4_3209_4_la7.3209
}
}
vrrp_instance VI_4_3209_6_la7.3209
{
interface la7.3209
virtual_router_id 4
use_vmac
garp_master_refresh 60
priority 102
advert_int 1
virtual_ipaddress
{
1041::100
}
}
vrrp_instance VI_4_3209_4_la7.3209
{
interface la7.3209
virtual_router_id 4
use_vmac
garp_master_refresh 60
priority 102
advert_int 1
virtual_ipaddress
{
141.42.0.100
}
}
vrrp_sync_group VI_5_3210_la7.3210
{
group {
VI_5_3210_6_la7.3210
VI_5_3210_4_la7.3210
}
}
vrrp_instance VI_5_3210_6_la7.3210
{
interface la7.3210
virtual_router_id 5
use_vmac
garp_master_refresh 60
priority 103
advert_int 1
virtual_ipaddress
{
1042::100
}
}
vrrp_instance VI_5_3210_4_la7.3210
{
interface la7.3210
virtual_router_id 5
use_vmac
garp_master_refresh 60
priority 103
advert_int 1
virtual_ipaddress
{
142.43.0.100
}
}
vrrp_sync_group VI_5_3211_la7.3211
{
group {
VI_5_3211_6_la7.3211
VI_5_3211_4_la7.3211
}
}
vrrp_instance VI_5_3211_6_la7.3211
{
interface la7.3211
virtual_router_id 5
use_vmac
garp_master_refresh 60
priority 104
advert_int 1
virtual_ipaddress
{
1043::100
}
}
vrrp_instance VI_5_3211_4_la7.3211
{
interface la7.3211
virtual_router_id 5
use_vmac
garp_master_refresh 60
priority 104
advert_int 1
virtual_ipaddress
{
143.44.0.100
}
}
vrrp_sync_group VI_6_3212_la7.3212
{
group {
VI_6_3212_6_la7.3212
VI_6_3212_4_la7.3212
}
}
vrrp_instance VI_6_3212_6_la7.3212
{
interface la7.3212
virtual_router_id 6
use_vmac
garp_master_refresh 60
priority 105
advert_int 1
virtual_ipaddress
{
1044::100
}
}
vrrp_instance VI_6_3212_4_la7.3212
{
interface la7.3212
virtual_router_id 6
use_vmac
garp_master_refresh 60
priority 105
advert_int 1
virtual_ipaddress
{
144.45.0.100
}
}
vrrp_sync_group VI_6_3213_la7.3213
{
group {
VI_6_3213_6_la7.3213
VI_6_3213_4_la7.3213
}
}
vrrp_instance VI_6_3213_6_la7.3213
{
interface la7.3213
virtual_router_id 6
use_vmac
garp_master_refresh 60
priority 106
advert_int 1
virtual_ipaddress
{
1045::100
}
}
vrrp_instance VI_6_3213_4_la7.3213
{
interface la7.3213
virtual_router_id 6
use_vmac
garp_master_refresh 60
priority 106
advert_int 1
virtual_ipaddress
{
145.46.0.100
}
}
vrrp_sync_group VI_6_3214_la7.3214
{
group {
VI_6_3214_6_la7.3214
VI_6_3214_4_la7.3214
}
}
vrrp_instance VI_6_3214_6_la7.3214
{
interface la7.3214
virtual_router_id 6
use_vmac
garp_master_refresh 60
priority 106
advert_int 1
virtual_ipaddress
{
1046::100
}
}
vrrp_instance VI_6_3214_4_la7.3214
{
interface la7.3214
virtual_router_id 6
use_vmac
garp_master_refresh 60
priority 106
advert_int 1
virtual_ipaddress
{
146.47.0.100
}
}
vrrp_sync_group VI_7_3215_la7.3215
{
group {
VI_7_3215_6_la7.3215
VI_7_3215_4_la7.3215
}
}
vrrp_instance VI_7_3215_6_la7.3215
{
interface la7.3215
virtual_router_id 7
use_vmac
garp_master_refresh 60
priority 10
advert_int 1
virtual_ipaddress
{
1048::100
}
}
vrrp_instance VI_7_3215_4_la7.3215
{
interface la7.3215
virtual_router_id 7
use_vmac
garp_master_refresh 60
priority 10
advert_int 1
virtual_ipaddress
{
147.48.0.100
}
}

from keepalived.

pqarmitage avatar pqarmitage commented on June 10, 2024

I have simulated failing to add a link-local address to the VMAC for VI_1_3200_6_la7.3200, since I cannot reproduce the ENOMEM problem. Although I have not been able to reproduce the segfault, it is clear that the code is not handling the failure to add the link-local address.

Commit 0b3265b handles failure to add an IPv6 link-local address to a VMAC. Commit e73702a stops an error being logged for failure to send an advert after the IPv6 link-local address has been removed from the VMAC (this isn't directly relevant to this issue, but the problem was noticed when testing this issue).

from keepalived.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.