Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

TALK ALG

 

The TALK ALG is a visual communication program used for interactive communication between two users. The TALK protocol uses UDP port 517 and port 518 for control channel connections. The talk program consists of a server and a client. The server handles client notifications and helps to establish talk sessions. There are two types of talk servers: ntalk and talkd. The TALK ALG processes packets of both ntalk and talkd formats. It also performs NAT and gate opening as necessary.

Understanding the TALK ALG

The TALK ALG is a visual communication program used for interactive communication between two users. The TALK ALG processes TALK packets, performs Network Address Translation (NAT), and opens two gates (TCP and UDP) on the receiver side. One gate is used for the next LOOKUP packet. The other gate is used for make a connection from a client to a server and to initiate communication between a client and a server located on opposite sides of a Juniper Networks device.

There are two types of TALK servers: ntalkd and talkd.

The TALK ALG processes both ntalk and talkd packets. The TALK ALG uses port UDP517 and port UDP518 to establish a connection between a client and a server.

Example: Configuring the TALK ALG

This example show how to configure the TALK ALG in route or NAT mode, allow the TALK traffic to pass through a device, and initiate communication between a client and a server located on opposite sides of a Juniper Networks device.

Requirements

This example uses the following hardware and software components:

  • An SRX Series device

  • Two PCs (client and server)

Before you begin:

Overview

In this example, first you configure network interfaces on the device, create security zones and assign interfaces to the zones, and configure a policy to allow TALK traffic to go through an SRX Series device.

Then you create a static NAT rule set rs1 with a rule r1 to match the destination address 40.5.2.120/32, and you create a static NAT prefix with address 20.5.2.120/32.

Next you create a source NAT pool src-p1 with a source rule set src-rs1 to translate packets from zone trust to zone untrust. For matching packets, the source address is translated to an IP address in the src-p1 pool.

Then you create a destination NAT pool des-p1 with a destination rule set des-rs1 to translate packets from zone trust to destination address 40.5.2.121/32. For matching packets, the destination address is translated to an IP address in the des-p1 pool. Finally, you configure TALK ALG trace options.

Topology

Figure 1 shows the TALK ALG topology.

Figure 1: TALK ALG Topology
TALK ALG Topology

Configuration

To configure the TALK ALG, perform these tasks:

Configuring a Route Mode

CLI Quick Configuration

To quickly configure this example, copy the following commands, paste them into a text file, remove any line breaks, change any details necessary to match your network configuration, copy and paste the commands into the CLI at the [edit] hierarchy level, and then enter commit from configuration mode.

Step-by-Step Procedure

The following example requires you to navigate various levels in the configuration hierarchy. For instructions on how to do that, see Using the CLI Editor in Configuration Mode in the CLI User Guide.

To configure route mode:

  1. Configure interfaces.
  2. Configure zones and assign interfaces to the zones.
  3. Configure a TALK policy that allows TALK traffic from the trust zone to the untrust zone.

Results

From configuration mode, confirm your configuration by entering the show interfaces, show security zones, and show security policies commands. If the output does not display the intended configuration, repeat the configuration instructions in this example to correct it.

For brevity, this show output includes only the configuration that is relevant to this example. Any other configuration on the system has been replaced with ellipses (...).

If you are done configuring the device, enter commit from configuration mode.

Configuring a Static NAT Rule Set

CLI Quick Configuration

To quickly configure this example, copy the following commands, paste them into a text file, remove any line breaks, change any details necessary to match your network configuration, copy and paste the commands into the CLI at the [edit] hierarchy level, and then enter commit from configuration mode.

Step-by-Step Procedure

The following example requires you to navigate various levels in the configuration hierarchy. For instructions on how to do that, see Using the CLI Editor in Configuration Mode in the CLI User Guide.

To configure a static NAT rule set:

  1. Create a static NAT rule set.
  2. Define the rule to match with the destination address.
  3. Define the static NAT prefix for the device.

Results

From configuration mode, confirm your configuration by entering the show security nat command. If the output does not display the intended configuration, repeat the configuration instructions in this example to correct it.

If you are done configuring the device, enter commit from configuration mode.

Configuring a Source NAT Pool and Rule Set

CLI Quick Configuration

To quickly configure this example, copy the following commands, paste them into a text file, remove any line breaks, change any details necessary to match your network configuration, copy and paste the commands into the CLI at the [edit] hierarchy level, and then enter commit from configuration mode.

Step-by-Step Procedure

The following example requires you to navigate various levels in the configuration hierarchy. For instructions on how to do that, see Using the CLI Editor in Configuration Mode in the CLI User Guide.

To configure a source NAT pool and rule set:

  1. Create a source NAT pool.
  2. Create a source NAT rule set.
  3. Configure a rule that matches packets and translates the source address to an address in the source pool.
  4. Configure a rule that matches packets and translates the destination address to an address in the source pool.
  5. Configure a source NAT pool in the rule.

Results

From configuration mode, confirm your configuration by entering the show security nat command. If the output does not display the intended configuration, repeat the configuration instructions in this example to correct it.

If you are done configuring the device, enter commit from configuration mode.

Configuring a Destination NAT Pool and Rule Set

CLI Quick Configuration

To quickly configure this example, copy the following commands, paste them into a text file, remove any line breaks, change any details necessary to match your network configuration, copy and paste the commands into the CLI at the [edit] hierarchy level, and then enter commit from configuration mode.

Step-by-Step Procedure

The following example requires you to navigate various levels in the configuration hierarchy. For instructions on how to do that, see Using the CLI Editor in Configuration Mode in the CLI User Guide.

To configure a destination NAT pool and rule set:

  1. Create a destination NAT pool.
  2. Create a destination NAT rule set.
  3. Configure a rule that matches packets and translates the source address to the address in the pool.
  4. Configure a rule that matches packets and translates the destination address to the address in the pool.
  5. Configure a source NAT pool in the rule.

Results

From configuration mode, confirm your configuration by entering the show security nat command. If the output does not display the intended configuration, repeat the configuration instructions in this example to correct it.

If you are done configuring the device, enter commit from configuration mode.

Configuring TALK ALG trace options

CLI Quick Configuration

To quickly configure this example, copy the following commands, paste them into a text file, remove any line breaks, change any details necessary to match your network configuration, copy and paste the commands into the CLI at the [edit] hierarchy level, and then enter commit from configuration mode.

Step-by-Step Procedure

The following example requires you to navigate various levels in the configuration hierarchy. For instructions on how to do that, see Using the CLI Editor in Configuration Mode in the CLI User Guide.

To configure TALK ALG trace options:

  1. Enable TALK ALG trace otpions.
  2. Configure the filename to receive output from the tracing operation.
  3. Specify the maximum trace file size.
  4. Specify the level of tracing output.

Results

From configuration mode, confirm your configuration by entering the show security alg command. If the output does not display the intended configuration, repeat the configuration instructions in this example to correct it.

If you are done configuring the device, enter commit from configuration mode.

Verification

Confirm that the configuration is working properly.

Verifying the TALK ALG Control Session

Purpose

Verify that the TALK control session is created and all the TALK control and data sessions are created.

Action

From operational mode, enter the show security flow session command.

user@host>show security flow session

Meaning

  • Session ID—Number that identifies the session. Use this ID to get more information about the session such as policy name or number of packets in and out.

  • Policy name—Policy name that permitted the traffic.

  • In—Incoming flow (source and destination IP addresses with their respective source and destination port numbers, session is TCP, and the source interface for this session is ge-0/0/1.0).

  • Out—Reverse flow (source and destination IP addresses with their respective source and destination port numbers, session is TCP, and destination interface for this session is fe-0/0/2.0).

Verifying the TALK Flow Gate Information

Purpose

Verify that the gates are opened for TCP data channel and reverse UDP reply.

Action

From operational mode, enter the show security flow gate command.

user@host>show security flow gate

Meaning

  • Hole—Range of flows permitted by the pinhole.

  • Translated—Tuples used to create the session if it matches the pinhole (source and destination IP addresses with their respective source and destination port numbers).

  • Protocol—Application protocol, such as UDP or TCP.

  • Application—Name of the application.

  • Age—Idle timeout for the pinhole.

  • Flags— Internal debug flags for the pinhole.

  • Zone—Security zone such as from zone and to zone.

  • Reference count—Number of resource manager references to the pinhole.

  • Resource—Resource manager information about the pinhole.



Verifying TALK ALG

Purpose

Verify that the TALK ALG is enabled.

Action

From operational mode, enter the show security alg status command.

user@host>show security alg status

Meaning

The output shows the TALK ALG status as follows:

  • Enabled—Shows the TALK ALG is enabled.

  • Disabled—Shows the TALK ALG is disabled.

Verifying the TALK Resource Manager Group

Purpose

Verify the total number of resource manager groups and active groups that are used by the TALK ALG.

Action

From operational mode, enter the show security resource-manager group active command.

user@host>show security resource-manager group active

Verifying the TALK Resource Information

Purpose

Verify the total number of resources and active resources that are used by the TALK ALG.

Action

From operational mode, enter the show security resource-manager resource active command.

user@host>show security resource-manager resource active

Related Documentation