<p>I want to create an Openshift route that accepts SMTP traffic.</p>
<p>I can do it with a nodeport but I loose the DNS and load balancing features a route offers me.</p>
<p>Can I just use a TCP route on port 25?</p>
<p>Is this possible?</p>

<p>Short answer: No you can't<br />
<code>&quot;Routes&quot;</code>can only &quot;listen&quot; on ports 80 and 443</p>
<p><code>&quot;NodePort&quot;</code>Service is the way to go here</p>
<p>As for DNS and load balancing, you need to use/install a load balancer in front of your cluster. OCP requires 2 in fact. One for the API and one for user traffic...</p>
<p>You should already have one to point to the nodes where your ingress controllers are deployed in your OCP cluster to direct the traffic to the&quot;<code>Routes</code>&quot;...</p>
<p>Also a<code>NodePort</code>service will make <strong>all</strong> the nodes of the cluster to listen on that port even the ones where the pods associated wit your application do not run. The traffic will be routed/dispatched from the node where the connection landed to one of the nodes where the k8s scheduler started your application pods, so the &quot;internal load balancing&quot;</p>
<p><a href="https://docs.openshift.com/container-platform/4.7/networking/configuring_ingress_cluster_traffic/overview-traffic.html" rel="nofollow noreferrer">Official doc here</a></p>
