Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[Info-Ingres] Ingres ports used

308 views
Skip to first unread message

Richard Harden

unread,
Sep 4, 2013, 1:10:04 AM9/4/13
to info-...@kettleriverconsulting.com

Greetings All,

I have two questions.

1.      How do I determine what port is used, from the Installation Identifier

2.      Is there any way to specify permanently which ports are used on a specific Ingres installation (wintcp, tcp_ip and the DAS is used)

I have an installation being set up, where the servers are firewalled from the general users, and they want to specify exactly which ports are used / opened to allow the application to work.

Reading the Wiki, it states that for example

If II_Installation Is set to II, then the port has a specific value, and that port plus the next 7 are used.

My listen address is NZ, what port does that  map to.

Sorry.


Ingres 9.2 SP1 on windows 32bit


TIA

Cheers

Richard

/++++++++++++++++++++++++++++++++++\

| New Zealander, Leading the world |

\++++++++++++++++++++++++++++++++++/

Paul White

unread,
Sep 4, 2013, 1:59:58 AM9/4/13
to Ingres and related product discussion forum

Hi Richard,

Check the first few lines in errlog.log

Here is excerpt from Ingres 10 log.

 

EDLYNINGRES1      ::[II\COMSVR\4998    , 18840     , 00000000ffffffff]: Wed Sep 04 01:51:32 2013 E_GC2815_NTWK_OPEN   Network open complete for protocol TCP_IP, port II (21064)

 

EDLYNINGRES1      ::[II\DASVR\5024     , 20516     , 0000000000000000]: Wed Sep 04 01:51:35 2013 E_GC4803_NTWK_OPEN   Network open complete for protocol TCP_IP, port II7 (21071)

 

 

If you check old postings at this forum you will probably find a much smarter method.

 

Cheers

Paul White

&
Shift Seven Solutions
www.shift7solutions.com.au

Martin Bowes

unread,
Sep 4, 2013, 3:00:04 AM9/4/13
to Ingres and related product discussion forum

Hi Richard,

 

The installation identifier NZ will map to port 23760. I can send you a program to determine port numbers from the installation identifier if you want.

 

And you are correct that it will use that port plus the next seven for the various dodads that make Ingres. And as far as I know there is no way to say bring up specific components on specific ports.

 

Martin Bowes

Richard Harden

unread,
Sep 4, 2013, 4:02:15 AM9/4/13
to Ingres and related product discussion forum

Thanks Paul,

 

I was aware that the error log mentioned them,

But I also understood (rightly or wrongly)  that they were randomly assigned (Wiki implies) – When probably at ingres start-up.

So I both need to map Installation identifier to port, but also

See if there was a way to override the random assignation and assign permanent ports

So that our firewall people could make the firewall porous for our Ingres applications.

 

Martin has replied off-line, with some additional options, but is unaware of any method to set the ports permanently.

 

 

 

 

 

Cheers

Richard

/++++++++++++++++++++++++++++++++++\

| New Zealander, Leading the world |

\++++++++++++++++++++++++++++++++++/

 

From: info-ingr...@kettleriverconsulting.com [mailto:info-ingr...@kettleriverconsulting.com] On Behalf Of Paul White
Sent: Wednesday, 4 September 2013 6:00 p.m.
To: 'Ingres and related product discussion forum'
Subject: Re: [Info-Ingres] Ingres ports used

 

Hi Richard,

Check the first few lines in errlog.log

Here is excerpt from Ingres 10 log.

 

EDLYNINGRES1      ::[II\COMSVR\4998    , 18840     , 00000000ffffffff]: Wed Sep 04 01:51:32 2013 E_GC2815_NTWK_OPEN   Network open complete for protocol TCP_IP, port II (21064)

 

EDLYNINGRES1      ::[II\DASVR\5024     , 20516     , 0000000000000000]: Wed Sep 04 01:51:35 2013 E_GC4803_NTWK_OPEN   Network open complete for protocol TCP_IP, port II7 (21071)

 

 

If you check old postings at this forum you will probably find a much smarter method.

 

Cheers

Paul White

&
Shift Seven Solutions
www.shift7solutions.com.au

 

 

 

 


Sent: Wednesday, 4 September 2013 3:10 PM

To: info-...@kettleriverconsulting.com
Subject: [Info-Ingres] Ingres ports used

Peter Jameson

unread,
Sep 4, 2013, 4:42:51 AM9/4/13
to

> But I also understood (rightly or wrongly) that they were randomly
> assigned (Wiki implies) � When probably at ingres start-up.
>

No they are not random, they are calculated from the listen address.
If they were random how would the clients know what to connect to? The
client makes the same calculation when you give it the listen address.

So also long as you don't change your installation id then the ports
won't change.

Obviously the port the client uses to receive it's reply will change
each time, but that's true of most TCP IP connections and you don't
usually deal with those in the firewall setup. It's just the incoming
request port that needs to be opened on the server firewall.

Michael Dyer

unread,
Sep 4, 2013, 6:22:19 AM9/4/13
to Ingres and related product discussion forum

Hi Richard,

There is a knowledgebase article, entitled “Manual Calculation of the tcp_ip Port Number from Listen Address”, which provides a reasoned answer to this question.

Please also note that use of ‘wintcp’ is deprecated. 

 

So, for NZ

N = 14

Z = 26

 

The formula (for 2 alphas) is  = 16384 + 512*N + 8*Z  or (16384 + 512*14 + 8*26 = 23760)

 

So NZ = 23760     (gcc0)

      NZ2 = 23762   (gcc2)

      NZ7 = 23767   (DAS)  (Take care if you need more than 7 gcc servers.)

See also knowledgebase article, entitled “Number of GCC Servers”.

 

In all cases, when a iigcc process starts up, the listen address and the numerical port are printed in the errlog.log.

 

Please note that the GCN server, DBMS server, STAR server, etc use random, OS allocated ports and these can change when Ingres is re-started.

 

I hope this helps.

 

Michael

 


Sent: 04 September 2013 06:10

To: info-...@kettleriverconsulting.com
Subject: [Info-Ingres] Ingres ports used

Ingres Forums

unread,
Sep 4, 2013, 9:02:18 AM9/4/13
to

You can find the actual physical port number reported in the error log
like this:
voyager.local ::[61262 IIGCD, 8098 , 00000000ffffffff]:
Tue Aug 20 08:13:35 2013 E_GC4803_NTWK_OPEN Network open complete for
protocol TCP_IP, port VW7 (27839).
(Ingres 10)


--
daryl...@ingres.com
------------------------------------------------------------------------
daryl...@ingres.com's Profile: http://community.actian.com/forum/member.php?userid=736
View this thread: http://community.actian.com/forum/showthread.php?t=15455

Ingres Forums

unread,
Sep 4, 2013, 12:36:20 PM9/4/13
to

> I was aware that the error log mentioned them,
> But I also understood (rightly or wrongly) that they were randomly
assigned
> (Wiki implies) - When probably at ingres start-up.
> So I both need to map Installation identifier to port, but also
> See if there was a way to override the random assignation and assign
> permanent ports

The server listen ports for local communications are assigned randomly
by the OS. The Name Server listen port is recorded in the symbol table
so that clients can reach the NS, and all other servers register their
ports with the NS. You should not need to know these ports except for
running iimonitor. These ports are not accessed directly by remote
clients.

The ports used for remote access are fixed and generally derived from
the installation ID. Remote communications are routed through the Comm
Server (iigcc) and Data Access Server (iigcd). In your case iigcc
should be using NZ and iigcd NZ7. You can assign other ports if you
want, and even assign a numeric port like 20000. The installation code
default is just the 'usual' way things are set up. To see the ports
configured or to set them to whatever you want, use CBF. Select Net
Server or Data Access Server, then protocols and look for the tcp_ip
port setting.


--
thogo01
------------------------------------------------------------------------
thogo01's Profile: http://community.actian.com/forum/member.php?userid=4992
View this thread: http://community.actian.com/forum/showthread.php?t=15459

Roger L. Whitcomb

unread,
Sep 4, 2013, 1:36:26 PM9/4/13
to Ingres and related product discussion forum
There is a Wiki page that also has a program you can use to calculate
the port numbers from the installation ID (ahead of time, before they
are reported via the "errlog.log"):
http://community.actian.com/wiki/Ingres_TCP_Ports The program will also
do the reverse calculation.

~Roger


-----Original Message-----
From: info-ingr...@kettleriverconsulting.com
[mailto:info-ingr...@kettleriverconsulting.com] On Behalf Of
Ingres Forums
Sent: Wednesday, September 04, 2013 9:36 AM
To: info-...@kettleriverconsulting.com
Subject: Re: [Info-Ingres] Ingres ports used


_______________________________________________
Info-Ingres mailing list
Info-...@kettleriverconsulting.com
http://ext-cando.kettleriverconsulting.com/mailman/listinfo/info-ingres


Richard Harden

unread,
Sep 5, 2013, 4:55:36 AM9/5/13
to Ingres and related product discussion forum
Hi All,

Thanks for all your replies.

I managed to get the method for calculation of the port from the listen
address
>From both Actian, and a number of people via this group forum (both online
and offline)

I have also been told that the server ports for local comms are randomly
assigned at server startup,
And trolling the errlog.log reflects this.

An explanation from Actian re: "TCP Port sequencing in Ingres" seems to say
that once the client app has contacted the local name server, this then
contacts local comms server
Which contacts the remote(server) name server, which contacts its local
comms server which then passés back through the pipe the servers comms port
for the client to access
Depending on its requirements, eg dbms, das, star etc

(yes I know this is a grossly simplified explanation)

But it is the servers comms port as defined by II_GCNxx_PORT that varies
almost every ingres start, and it's this transient value that is the
problem.

We (company) are busy moving from a relatively open internal lan, where
client-to-server comms are relatively open there has been no problem.

But the new installation has a server farm, and also a citrix thin-client
farm, and in the name of security there is a total firewall between them
And we are busy installing our app into the citrix farm, and are finding
that the clients cannot connect to the Ingres RDBMS server behind the server
farms firewall

We know the ports required for the application file shares,
We know the ports required by ingres based on the listen addresses used e.g.
primary listen address is NZ and the DAS is NZ7 so we can open the
23760-23767 range

All this appears to do is allow the initial handshake to happen, after which
the client is told the servers port to use, and if this keeps changing how
the heck do you
Open the port-used-this-time through the firewall, when it may well be
different after the next ingres restart.

Peter J mentions
<quote> the port the client uses to receive its reply will change each time,
but that’s true of most TCP IP connections and you don't usually deal with
those in the firewall setup. It's just the incoming request port that needs
to be open on the server firewall</quote>

Not quite sure I understand that, however probably that’s just me.:)

Without understanding the firewall separating the citrix client farm from
the rdbms server farm, all I may be able to do is to get the
listen-addres-mapped port range opened, then see if it works


Again,

Thanks for all the replies and responses, both online and offline

I will post any results / issues as they happen.



Cheers
Richard
/++++++++++++++++++++++++++++++++++\
| New Zealander, Leading the world |
\++++++++++++++++++++++++++++++++++/

-----Original Message-----
From: info-ingr...@kettleriverconsulting.com
[mailto:info-ingr...@kettleriverconsulting.com] On Behalf Of Roger L.
Whitcomb
Sent: Thursday, 5 September 2013 5:36 a.m.
To: Ingres and related product discussion forum
Subject: Re: [Info-Ingres] Ingres ports used

There is a Wiki page that also has a program you can use to calculate the
port numbers from the installation ID (ahead of time, before they are
reported via the "errlog.log"):
http://community.actian.com/wiki/Ingres_TCP_Ports The program will also do
the reverse calculation.

~Roger


-----Original Message-----
From: info-ingr...@kettleriverconsulting.com
[mailto:info-ingr...@kettleriverconsulting.com] On Behalf Of Ingres
Forums
Sent: Wednesday, September 04, 2013 9:36 AM
To: info-...@kettleriverconsulting.com
Subject: Re: [Info-Ingres] Ingres ports used


Ingres Forums

unread,
Sep 5, 2013, 12:59:52 PM9/5/13
to

What you describe - client receives DBMS port and connects directly to
it - can be configured but is not the normal operation mode. The normal
connection proceeds as follows:

1. Client connects to Client Name Server and obtains client Comm Server
port.
2. Client connect to client Comm Server.
3. Client Comm Server connects to Server Comm Server.
4. Server Comm Server connects to Server Name Server and obtains DBMS
port.
5. Server Comm Server connects to DBMS.

All communications then flows Client to Client Comm Server to Server
Comm Server to DBMS. Network access to DBMS port should not be needed.

The type of connection you are describing is called a 'direct'
connection. One way to do a direct connection is to set the DBMS port
in an environment variable on the client side. The other way is to add
a connection attribute to the vnode used for the connection that
declares the 'connection_type' to be 'direct'. In both cases, you also
have to set an environment variable on the server side that permits
network connections on the local communications port. So, unless you
have done all the work to configure direct connections, connections
should just be going through the Comm Servers.

Note that the local connection protocol is platform depedent and
requires to client and server to be on the same architecture platforms.

Richard Harden

unread,
Sep 6, 2013, 6:08:29 AM9/6/13
to Ingres and related product discussion forum
Thanks, that made much more sense when put like that.
It also implies that as long as the 7 port range derived from the
II_Installation are not blocked by the firewall, then
Normal operation should be possible.



Cheers
Richard
/++++++++++++++++++++++++++++++++++\
| New Zealander, Leading the world |
\++++++++++++++++++++++++++++++++++/

-----Original Message-----
From: info-ingr...@kettleriverconsulting.com
[mailto:info-ingr...@kettleriverconsulting.com] On Behalf Of Ingres
Forums
Sent: Friday, 6 September 2013 5:00 a.m.
To: info-...@kettleriverconsulting.com
Subject: Re: [Info-Ingres] Ingres ports used


Ingres Forums

unread,
Sep 11, 2013, 4:57:48 AM9/11/13
to

Hello Richard,

most of the things are being explained here, nevertheless if you are a
"Customer Portal" user I think it is worth to login and have a look at:
"KB article 000038838 Manual Calculation of the tcp_ip Port Number
from Listen Address"
It reveals all secrets how the port number is being calculated from the
value of 'tcp_ip.port'.

Thanks - Bilgihan


--
bilgihan
------------------------------------------------------------------------
bilgihan's Profile: http://community.actian.com/forum/member.php?userid=8658

Richard Harden

unread,
Sep 12, 2013, 5:02:59 AM9/12/13
to Ingres and related product discussion forum
Thanks Bilgihan,

I am indeed, after speaking to Actian, they pointed me to that paper too,
and it was very useful as was the postings various here

Thanks again.



Cheers
Richard
/++++++++++++++++++++++++++++++++++\
| New Zealander, Leading the world |
\++++++++++++++++++++++++++++++++++/

-----Original Message-----
From: info-ingr...@kettleriverconsulting.com
[mailto:info-ingr...@kettleriverconsulting.com] On Behalf Of Ingres
Forums
Sent: Wednesday, 11 September 2013 8:58 p.m.
To: info-...@kettleriverconsulting.com
Subject: Re: [Info-Ingres] Ingres ports used


Jean-Pierre Zuate, La Fage Conseil

unread,
Sep 12, 2013, 10:40:57 AM9/12/13
to Ingres and related product discussion forum
Hi all,

I have added an SQL alternative to detect socket and listen in the wiki : http://community.actian.com/wiki/Ingres_TCP_Ports

Hope I'am not wrong in my "coding".

:)

--
Jean-Pierre Zuate
La Fage Conseil
jean-pie...@lafageconseil.fr
http://lafageconseil.fr/


2013/9/4 Roger L. Whitcomb <Roger.W...@actian.com>
There is a Wiki page that also has a program you can use to calculate
the port numbers from the installation ID (ahead of time, before they
are reported via the "errlog.log"):
http://community.actian.com/wiki/Ingres_TCP_Ports  The program will also
do the reverse calculation.

~Roger


-----Original Message-----
From: info-ingr...@kettleriverconsulting.com
[mailto:info-ingr...@kettleriverconsulting.com] On Behalf Of
Ingres Forums
Sent: Wednesday, September 04, 2013 9:36 AM
To: info-...@kettleriverconsulting.com
Subject: Re: [Info-Ingres] Ingres ports used


0 new messages