暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

ip addr和ifconfig在keepalived中Virtual IP address中的坑

原创 库海无涯 2024-04-25
874

##

ip addr和ifconfig在keepalived中Virtual IP address中的坑

1、概述

今天遇到一个奇葩问题,给一个客户搭建haproxy+keepalived时,使用ifconfig看不到keepalived中配置的Virtual IP address,但是却可以ping通,日志也没有任何异常报错。尝试了多种方法之后已然无法解决。搭建实验环境测试,已然如此。

2、问题复现

[root@mydb ~]# ifconfig
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.194.130  netmask 255.255.255.0  broadcast 192.168.194.255
        inet6 fe80::6413:8eda:1c3a:6da2  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:e9:58:55  txqueuelen 1000  (Ethernet)
        RX packets 10561  bytes 8575255 (8.1 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 15344  bytes 978103 (955.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 10239  bytes 908876 (887.5 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 10239  bytes 908876 (887.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@mydb ~]# ping 192.168.194.50
PING 192.168.194.50 (192.168.194.50) 56(84) bytes of data.
64 bytes from 192.168.194.50: icmp_seq=1 ttl=64 time=0.033 ms
64 bytes from 192.168.194.50: icmp_seq=2 ttl=64 time=0.049 ms
64 bytes from 192.168.194.50: icmp_seq=3 ttl=64 time=0.071 ms
^C
--- 192.168.194.50 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2043ms
rtt min/avg/max/mdev = 0.033/0.051/0.071/0.015 ms

3、无意找到VIP地址

我是比较喜欢使用ip a的,无意敲了一下,发现居然可以看到Virtual IP address,这也就解释了为啥可以ping通,实际已经生成了Virtual IP address。

[root@mydb ~]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:0c:29:e9:58:55 brd ff:ff:ff:ff:ff:ff altname enp3s0 inet 192.168.194.130/24 brd 192.168.194.255 scope global noprefixroute ens160 valid_lft forever preferred_lft forever inet 192.168.194.50/24 scope global secondary ens160 valid_lft forever preferred_lft forever inet6 fe80::6413:8eda:1c3a:6da2/64 scope link noprefixroute valid_lft forever preferred_lft forever

4、网络找原因

看了下这篇文章,写的也不是很清楚。仅查看

https://blog.csdn.net/kittygilr/article/details/79967000

5、查看命令帮助

[root@mydb ~]# ip address help Usage: ip address {add|change|replace} IFADDR dev IFNAME [ LIFETIME ] [ CONFFLAG-LIST ] ip address del IFADDR dev IFNAME [mngtmpaddr] ip address {save|flush} [ dev IFNAME ] [ scope SCOPE-ID ] [ to PREFIX ] [ FLAG-LIST ] [ label LABEL ] [up] ip address [ show [ dev IFNAME ] [ scope SCOPE-ID ] [ master DEVICE ] [ nomaster ] [ type TYPE ] [ to PREFIX ] [ FLAG-LIST ] [ label LABEL ] [up] [ vrf NAME ] ] ip address {showdump|restore} IFADDR := PREFIX | ADDR peer PREFIX [ broadcast ADDR ] [ anycast ADDR ] [ label IFNAME ] [ scope SCOPE-ID ] [ metric METRIC ] SCOPE-ID := [ host | link | global | NUMBER ] FLAG-LIST := [ FLAG-LIST ] FLAG FLAG := [ permanent | dynamic | secondary | primary | [-]tentative | [-]deprecated | [-]dadfailed | temporary | CONFFLAG-LIST ] CONFFLAG-LIST := [ CONFFLAG-LIST ] CONFFLAG CONFFLAG := [ home | nodad | mngtmpaddr | noprefixroute | autojoin ] LIFETIME := [ valid_lft LFT ] [ preferred_lft LFT ] LFT := forever | SECONDS TYPE := { amt | bareudp | bond | bond_slave | bridge | bridge_slave | dsa | dummy | erspan | geneve | gre | gretap | gtp | ifb | ip6erspan | ip6gre | ip6gretap | ip6tnl | ipip | ipoib | ipvlan | ipvtap | macsec | macvlan | macvtap | netdevsim | nlmon | rmnet | sit | team | team_slave | vcan | veth | vlan | vrf | vti | vxcan | vxlan | wwan | xfrm | virt_wifi }
[root@mydb ~]# ifconfig --help Usage: ifconfig [-a] [-v] [-s] <interface> [[<AF>] <address>] [add <address>[/<prefixlen>]] [del <address>[/<prefixlen>]] [[-]broadcast [<address>]] [[-]pointopoint [<address>]] [netmask <address>] [dstaddr <address>] [tunnel <address>] [outfill <NN>] [keepalive <NN>] [hw <HW> <address>] [mtu <NN>] [[-]trailers] [[-]arp] [[-]allmulti] [multicast] [[-]promisc] [mem_start <NN>] [io_addr <NN>] [irq <NN>] [media <type>] [txqueuelen <NN>] [[-]dynamic] [up|down] ... <HW>=Hardware Type. List of possible hardware types: loop (Local Loopback) slip (Serial Line IP) cslip (VJ Serial Line IP) slip6 (6-bit Serial Line IP) cslip6 (VJ 6-bit Serial Line IP) adaptive (Adaptive Serial Line IP) ash (Ash) ether (Ethernet) ax25 (AMPR AX.25) netrom (AMPR NET/ROM) rose (AMPR ROSE) tunnel (IPIP Tunnel) ppp (Point-to-Point Protocol) hdlc ((Cisco)-HDLC) lapb (LAPB) arcnet (ARCnet) dlci (Frame Relay DLCI) frad (Frame Relay Access Device) sit (IPv6-in-IPv4) fddi (Fiber Distributed Data Interface) hippi (HIPPI) irda (IrLAP) x25 (generic X.25) infiniband (InfiniBand) eui64 (Generic EUI-64) <AF>=Address family. Default: inet List of possible address families: unix (UNIX Domain) inet (DARPA Internet) inet6 (IPv6) ax25 (AMPR AX.25) netrom (AMPR NET/ROM) rose (AMPR ROSE) ipx (Novell IPX) ddp (Appletalk DDP) ash (Ash) x25 (CCITT X.25) [root@mydb ~]#

这里主要的区别就是Type,ip a中有v,还是细节。

6、关键字

keepalvied安装成功,可以ping通vip(Virtual IP address),但无法找到vip(Virtual IP address)

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论