Bug 827100 - UDPU mode creates unbind sockets
Summary: UDPU mode creates unbind sockets
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: corosync
Version: 6.4
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: rc
: ---
Assignee: Jan Friesse
QA Contact: Cluster QE
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-05-31 15:31 UTC by Jan Friesse
Modified: 2013-02-21 07:50 UTC (History)
2 users (show)

Fixed In Version: corosync-1.4.1-8.el6
Doc Type: Bug Fix
Doc Text:
Cause Using UDPU mode. Consequence There are sockets which are not bind to concrete IP but listens on all interfaces. This may be problem for configuring firewall. Fix Properly bind socket. Result All sockets are now properly bind to concrete IP.
Clone Of:
Environment:
Last Closed: 2013-02-21 07:50:25 UTC
Target Upstream Version:


Attachments (Terms of Use)
Proposed patch (4.63 KB, patch)
2012-05-31 15:31 UTC, Jan Friesse
no flags Details | Diff


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2013:0497 normal SHIPPED_LIVE corosync bug fix and enhancement update 2013-02-20 21:18:24 UTC

Description Jan Friesse 2012-05-31 15:31:36 UTC
Created attachment 588139 [details]
Proposed patch

Description of problem:
When running corosync in UDPU mode, there are sockets used for sending messages to other nodes (one socket per peer node). These sockets are bind to all interfaces (unbind). This may be problem with configuration of firewall.

Version-Release number of selected component (if applicable):
Flatiron

How reproducible:
100%

Steps to Reproduce:
1. configure corosync in udpu mode

compatibility: whitetank
totem {
version: 2
secauth: off
threads: 0
interface {
member {
memberaddr: 192.168.1.2
}
member {
memberaddr: 192.168.1.3
}
member {
memberaddr: 192.168.1.4
}
ringnumber: 0
bindnetaddr: 192.168.1.2
mcastaddr: 239.255.6.1
mcastport: 5462
ttl: 1
}
transport: udpu
}

...

2. corosync -f
3. netstat -anop | grep corosync
  
Actual results:
udp        0      0 0.0.0:*            0.0.0.0:*                               19137/corosync      off (0.00/0/0)
udp        0      0 0 0.0.0:*           0.0.0.0:*                               19137/corosync      off (0.00/0/0)
udp        0   1272 0 0.0.0:*           0.0.0.0:*                               19137/corosync      off (0.00/0/0)
udp        0      0 0 0.0.0:*           0.0.0.0:*                               19137/corosync      off (0.00/0/0)


Expected results:

udp        0      0 192.168.1.2:5462            0.0.0.0:*                               19137/corosync      off (0.00/0/0)
udp        0      0 192.168.1.2:42973           0.0.0.0:*                               19137/corosync      off (0.00/0/0)
udp        0   1272 192.168.1.2:40546           0.0.0.0:*                               19137/corosync      off (0.00/0/0)
udp        0      0 192.168.1.2:41602           0.0.0.0:*                               19137/corosync      off (0.00/0/0)


Additional info:

Comment 1 Jan Friesse 2012-05-31 15:34:14 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Cause
Using UDPU mode.

Consequence
There are sockets which are not bind to concrete IP but listens on all interfaces. This may be problem for configuring firewall.

Fix
Properly bind socket.

Result
All sockets are now properly bind to concrete IP.

Comment 6 Jaroslav Kortus 2012-11-29 16:39:18 UTC
Corosync correctly bound on one IP only:
$ netstat -latpnu | grep corosync
udp        0      0 192.168.101.1:58772         0.0.0.0:*                               3438/corosync       
udp        0      0 192.168.101.1:5405          0.0.0.0:*                               3438/corosync       
udp        0      0 192.168.101.1:45874         0.0.0.0:*                               3438/corosync       
udp        0      0 192.168.101.1:36324         0.0.0.0:*                               3438/corosync 

Tests passed dd_io over gfs2 volume. Marking as verified with corosync-1.4.1-11.el6.x86_64

Comment 8 errata-xmlrpc 2013-02-21 07:50:25 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2013-0497.html


Note You need to log in before you can comment on or make changes to this bug.