Bug 1456352
| Summary: | resolver socketfactory type doesn't work with multiple network interfaces | ||
|---|---|---|---|
| Product: | [oVirt] ovirt-engine-extension-aaa-ldap | Reporter: | Ondra Machacek <omachace> |
| Component: | Core | Assignee: | Ondra Machacek <omachace> |
| Status: | CLOSED NOTABUG | QA Contact: | Gonza <grafuls> |
| Severity: | medium | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 1.3.2 | CC: | bugs, mperina, wrichter |
| Target Milestone: | ovirt-4.3.0 | Flags: | rule-engine:
ovirt-4.3+
|
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2017-12-20 09:39:23 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | Infra | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
|
Description
Ondra Machacek
2017-05-29 07:58:12 UTC
Wolfram, can you please provide info how do you have the network interfaces configured in your IPA? *** Bug 1458920 has been marked as a duplicate of this bug. *** Hi Ondra,
this is a nested virtualization setup; each network is actually a libvirt bridge device that the IPA VM and the RHVM VM connect to. IPA attaches to 3 of these networks, three of which are shared with RHVM. The network communication is _intended_ (by me) to go via eth0 (192.168.101.0/24 network), but IPA resolves DNS requests against its own hostname with all 3 IPs.
[root@ipa ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
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: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 02:00:00:00:01:0b brd ff:ff:ff:ff:ff:ff
inet 192.168.101.11/24 brd 192.168.101.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::ff:fe00:10b/64 scope link
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 02:00:00:00:03:0b brd ff:ff:ff:ff:ff:ff
inet 192.168.103.11/24 brd 192.168.103.255 scope global eth1
valid_lft forever preferred_lft forever
inet6 fe80::ff:fe00:30b/64 scope link
valid_lft forever preferred_lft forever
4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 02:00:00:00:04:0b brd ff:ff:ff:ff:ff:ff
inet 192.168.104.11/24 brd 192.168.104.255 scope global eth2
valid_lft forever preferred_lft forever
inet6 fe80::ff:fe00:40b/64 scope link
valid_lft forever preferred_lft forever
[root@ipa ~]#
[root@rhevm ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
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: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 02:00:00:00:01:0c brd ff:ff:ff:ff:ff:ff
inet 192.168.101.12/24 brd 192.168.101.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::ff:fe00:10c/64 scope link
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 02:00:00:00:03:0c brd ff:ff:ff:ff:ff:ff
inet 192.168.103.12/24 brd 192.168.103.255 scope global eth1
valid_lft forever preferred_lft forever
inet6 fe80::ff:fe00:30c/64 scope link
valid_lft forever preferred_lft forever
4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 02:00:00:00:04:0c brd ff:ff:ff:ff:ff:ff
inet 192.168.104.12/24 brd 192.168.104.255 scope global eth2
valid_lft forever preferred_lft forever
inet6 fe80::ff:fe00:40c/64 scope link
valid_lft forever preferred_lft forever
[root@rhevm ~]#
At the moment, I do not have DNS resolution via /etc/hosts configured for IPA:
[root@rhevm ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.101.10 satellite satellite.hailstorm2.coe.muc.redhat.com
192.168.101.12 rhevm.hailstorm2.coe.muc.redhat.com
192.168.103.13 rhevh1.hailstorm2.coe.muc.redhat.com
192.168.103.14 rhevh2.hailstorm2.coe.muc.redhat.com
[root@rhevm ~]# nslookup ipa
Server: 192.168.101.11
Address: 192.168.101.11#53
Name: ipa.hailstorm2.coe.muc.redhat.com
Address: 192.168.101.11
Name: ipa.hailstorm2.coe.muc.redhat.com
Address: 192.168.104.11
Name: ipa.hailstorm2.coe.muc.redhat.com
Address: 192.168.103.11
[root@rhevm ~]# cat /etc/ovirt-engine/aaa/IPA.properties
include = <ipa.properties>
vars.server = ipa.hailstorm2.coe.muc.redhat.com
vars.user = uid=admin,cn=users,cn=compat,dc=hailstorm2,dc=coe,dc=muc,dc=redhat,dc=com
vars.password = xxxxxxx
pool.default.auth.simple.bindDN = ${global:vars.user}
pool.default.auth.simple.password = ${global:vars.password}
pool.default.serverset.type = single
pool.default.serverset.single.server = ${global:vars.server}
pool.default.ssl.startTLS = true
pool.default.socketfactory.type = java
pool.default.ssl.truststore.file = ${local:_basedir}/IPA.jks
pool.default.ssl.truststore.password = changeit
[root@rhevm ~]#
Bringing the discussion we started via email to BZ: I also want to confirm that reenabling STARTTLS with the default socket factory works as well. I.e. the only thing that prevents the scenario from working in my case is the resolver socket factory. Ok, it's starting to be more clear to me. Can you please share also the routing table? If I understand correctly if I resolve IP 192.168.104.11 of the IPA server then I will use eth2 and if I resolve IP 192.168.103.11 I will use eth1, etc, right? yes - name resolution seems to be random when using DNS [root@rhevm ~]# ip r default via 192.168.101.1 dev eth0 proto static metric 100 192.168.101.0/24 dev eth0 proto kernel scope link src 192.168.101.12 metric 100 192.168.103.0/24 dev eth1 proto kernel scope link src 192.168.103.12 metric 100 192.168.104.0/24 dev eth2 proto kernel scope link src 192.168.104.12 metric 100 [root@rhevm ~]# ping ipa PING ipa.hailstorm2.coe.muc.redhat.com (192.168.103.11) 56(84) bytes of data. 64 bytes from 192.168.103.11 (192.168.103.11): icmp_seq=1 ttl=64 time=0.202 ms 64 bytes from 192.168.103.11 (192.168.103.11): icmp_seq=2 ttl=64 time=0.296 ms 64 bytes from 192.168.103.11 (192.168.103.11): icmp_seq=3 ttl=64 time=0.315 ms ^C --- ipa.hailstorm2.coe.muc.redhat.com ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2000ms rtt min/avg/max/mdev = 0.202/0.271/0.315/0.049 ms [root@rhevm ~]# ping ipa PING ipa.hailstorm2.coe.muc.redhat.com (192.168.104.11) 56(84) bytes of data. 64 bytes from 192.168.104.11 (192.168.104.11): icmp_seq=1 ttl=64 time=0.312 ms 64 bytes from 192.168.104.11 (192.168.104.11): icmp_seq=2 ttl=64 time=0.263 ms 64 bytes from 192.168.104.11 (192.168.104.11): icmp_seq=3 ttl=64 time=0.261 ms ^C --- ipa.hailstorm2.coe.muc.redhat.com ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2000ms rtt min/avg/max/mdev = 0.261/0.278/0.312/0.030 ms [root@rhevm ~]# ping ipa PING ipa.hailstorm2.coe.muc.redhat.com (192.168.103.11) 56(84) bytes of data. 64 bytes from 192.168.103.11 (192.168.103.11): icmp_seq=1 ttl=64 time=0.417 ms 64 bytes from 192.168.103.11 (192.168.103.11): icmp_seq=2 ttl=64 time=0.284 ms ^C --- ipa.hailstorm2.coe.muc.redhat.com ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1001ms rtt min/avg/max/mdev = 0.284/0.350/0.417/0.069 ms [root@rhevm ~]# ping ipa PING ipa.hailstorm2.coe.muc.redhat.com (192.168.101.11) 56(84) bytes of data. 64 bytes from 192.168.101.11 (192.168.101.11): icmp_seq=1 ttl=64 time=0.315 ms 64 bytes from 192.168.101.11 (192.168.101.11): icmp_seq=2 ttl=64 time=0.235 ms ^C --- ipa.hailstorm2.coe.muc.redhat.com ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1001ms rtt min/avg/max/mdev = 0.235/0.275/0.315/0.040 ms [root@rhevm ~]# Due to insufficient resources moving to 4.2 This is done by design for resolver socket factory. If /etc/hosts have to be used, user have to use java socket factory type. In order to properly work with /etc/hosts you have to change following line in /etc/ovirt-engine/aaa/{profile}.properties:
pool.default.socketfactory.type = resolver
to
pool.default.socketfactory.type = java
Actually using /etc/hosts would be a workaround; the core problem was that an LDAP with multiple NICs did not work properly if DNS returns all IP addresses. |