# NAT

Published articles for NAT.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Worth Reading: NatJack

DevFeed: [Worth Reading: NatJack](<https://devfeed.tech/articles/worth-reading-natjack-11440.md>)

Original publisher: [Read original article](<https://blog.ipspace.net/2026/09/worth-reading-natjack-nat-security/>)

Published: 2026-09-11T07:02:00Z

Content type: opinion

Language: en

Sources: [ipSpace.net blog](<https://devfeed.tech/sources/ipspace-net-blog.md>)

Topics: [Security](<https://devfeed.tech/topics/security.md>)

Tags: [attacks](<https://devfeed.tech/tags/attacks.md>), [nat](<https://devfeed.tech/tags/nat.md>), [security](<https://devfeed.tech/tags/security.md>), [worth-reading](<https://devfeed.tech/tags/worth-reading.md>)

### AI overview

The article recommends NatJack, a website documenting several attacks against typical NAT implementations. It argues that NAT should not be treated as a security feature and dismisses common objections to that conclusion.

### Source excerpt

Every time I wrote something along the lines of NAT is not a security feature, I got the expected pushback from people defending their bad suboptimal design choices. Fortunately, rational1 engineers no longer need to have that discussion: the NatJack website documents2 a half-dozen attacks on typical NAT implementations. Obvious next step: coping mechanisms like "this is all theoretical", like the "but the remote host cannot reply" argument made 23 years after the Slammer worm 🤦♂. Read more ...

## Introducing IP Allowlisting

DevFeed: [Introducing IP Allowlisting](<https://devfeed.tech/articles/introducing-ip-allowlisting-16082.md>)

Original publisher: [Read original article](<https://postmarkapp.com/blog/restrict-email-sending-api-with-ip-allowlisting>)

Author: Postmark team (fdossetto+postmark@activecampaign.com)

Published: 2026-09-08T17:37:00Z

Content type: release

Language: en

Sources: [Postmark (en-US)](<https://devfeed.tech/sources/postmark-en-us.md>)

Topics: [Security](<https://devfeed.tech/topics/security.md>), [API](<https://devfeed.tech/topics/api.md>), [Network](<https://devfeed.tech/topics/network.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [ip](<https://devfeed.tech/tags/ip.md>), [nat](<https://devfeed.tech/tags/nat.md>), [network](<https://devfeed.tech/tags/network.md>), [product-news](<https://devfeed.tech/tags/product-news.md>), [protection](<https://devfeed.tech/tags/protection.md>), [range](<https://devfeed.tech/tags/range.md>), [request](<https://devfeed.tech/tags/request.md>), [security](<https://devfeed.tech/tags/security.md>), [token](<https://devfeed.tech/tags/token.md>)

### AI overview

Postmark introduces IP Allowlisting, a security feature that restricts email sending through the Postmark API to up to 10 configured IP ranges in CIDR format. Requests from outside the allowed ranges are rejected with a 403 response. The ranges can be configured at the Server or account level, with Server settings overriding account settings.

### Source excerpt

Good security is layered and each layer does a job the others can't. Scoping a token to a Server limits what it reaches. Rotating a token limits how long it lasts. Neither can say anything about where a request came from. We've been hard at work to ship a new layer of protection that can. IP Allowlisting is a new Postmark security feature that lets you name the infrastructure your email should come from. It's available now on all Postmark plans at no extra cost. It's off until you turn it on. How IP Allowlisting works You add up to 10 IP ranges, in CIDR format, that are allowed to send email using the Postmark API. Send requests from outside those ranges are rejected with a 403 status code that includes the IP the request came from. You can set your ranges in two places: On a Server. The ranges apply to that Server, covering every Message Stream on it. This is where we'd suggest starting. On your account. The ranges apply to every Server you have. When a Server has ranges of its own they will override account level settings. That's it! A straightforward security control to protect your API sending. Protect individual Servers or across your account. Set your Allowlist ranges on the account or Server. If you don't write CIDR blocks often, it's a quick 30 seconds to get familiar with them and the correct notation. CIDR blocks allow you to enable a grouped collection of IP addresses (aka ranges.) A CIDR block is an IP address followed by a suffix that says how many addresses it covers. The smaller the suffix, the wider the range: 198.51.100.24/32 one address, and only that address 203.0.113.0/24 256 addresses: 203.0.113.0 through 203.0.113.255 203.0.0.0/16 65,536 addresses: 203.0.0.0 through 203.0.255.255 So a /32 pins the allowlist to a single machine, and a /24 covers a subnet. Most teams end up somewhere in that span. Where you find your own ranges depends on how you send. A single VM has a static public IP you can read off your provider's dashboard. Cloud workloads

## AI, IPv6, and the future Internet at IETF 126

DevFeed: [AI, IPv6, and the future Internet at IETF 126](<https://devfeed.tech/articles/ai-ipv6-and-the-future-internet-at-ietf-126-10846.md>)

Original publisher: [Read original article](<https://blog.apnic.net/2026/08/25/ai-ipv6-and-the-future-internet-at-ietf-126/>)

Author: Anlei Hu

Published: 2026-08-25T01:20:50Z

Content type: article

Language: en

Sources: [APNIC Blog](<https://devfeed.tech/sources/apnic-blog.md>)

Topics: [Internet](<https://devfeed.tech/topics/internet.md>), [Internet Engineering Task Force (IETF)](<https://devfeed.tech/topics/ietf.md>), [networking](<https://devfeed.tech/topics/networking.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [AI Agent](<https://devfeed.tech/topics/ai-agent.md>), [Network](<https://devfeed.tech/topics/network.md>), [Security](<https://devfeed.tech/topics/security.md>), [Latency](<https://devfeed.tech/topics/latency.md>), [telemetry](<https://devfeed.tech/topics/telemetry.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [dns](<https://devfeed.tech/tags/dns.md>), [guest-post](<https://devfeed.tech/tags/guest-post.md>), [ietf](<https://devfeed.tech/tags/ietf.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [internet](<https://devfeed.tech/tags/internet.md>), [internet-infrastructure](<https://devfeed.tech/tags/internet-infrastructure.md>), [ipv6](<https://devfeed.tech/tags/ipv6.md>), [latency](<https://devfeed.tech/tags/latency.md>), [low-latency](<https://devfeed.tech/tags/low-latency.md>), [nat](<https://devfeed.tech/tags/nat.md>), [network](<https://devfeed.tech/tags/network.md>), [networks](<https://devfeed.tech/tags/networks.md>), [opinion](<https://devfeed.tech/tags/opinion.md>), [security](<https://devfeed.tech/tags/security.md>), [standards](<https://devfeed.tech/tags/standards.md>), [tech-matters](<https://devfeed.tech/tags/tech-matters.md>), [telemetry](<https://devfeed.tech/tags/telemetry.md>)

### AI overview

The article reports on IETF 126 discussions about how AI is shaping Internet infrastructure. It presents IPv6 as important for the scale, globally unique addressing, and traceability required by distributed AI deployments and agents, while DNS remains central to service discovery. It also covers IPv4/IPv6 mapping, NAT-related identity and security concerns, SRv6, low-latency forwarding, IOAM telemetry, and proposals for DNS-based AI agent discovery.

### Source excerpt

Guest Post: At IETF 126, discussions highlighted how AI is beginning to shape the future of Internet infrastructure. Participants identified IPv6 as a critical foundation for large-scale AI ecosystems and explored new approaches.

## Deploying IPv6-first EKS on AWS: What Still Doesn't Work, and What It Saves

DevFeed: [Deploying IPv6-first EKS on AWS: What Still Doesn't Work, and What It Saves](<https://devfeed.tech/articles/deploying-ipv6-first-eks-on-aws-what-still-doesn-t-work-and-what-it-saves-11454.md>)

Original publisher: [Read original article](<https://labs.ripe.net/author/spidee/deploying-ipv6-first-eks-on-aws-what-still-doesnt-work-and-what-it-saves/>)

Author: Spiro Stathakis

Published: 2026-08-14T08:57:28Z

Content type: article

Language: en

Sources: [RIPE Labs](<https://devfeed.tech/sources/ripe-labs.md>)

Topics: [Amazon Elastic Kubernetes Service](<https://devfeed.tech/topics/amazon-elastic-kubernetes-service.md>), [Amazon Web Services](<https://devfeed.tech/topics/aws.md>), [VPC](<https://devfeed.tech/topics/vpc.md>), [networking](<https://devfeed.tech/topics/networking.md>), [cloud-infrastructure](<https://devfeed.tech/topics/cloud-infrastructure.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>)

Tags: [2026](<https://devfeed.tech/tags/2026.md>), [amazon](<https://devfeed.tech/tags/amazon.md>), [amazon-elastic-kubernetes-service](<https://devfeed.tech/tags/amazon-elastic-kubernetes-service.md>), [aws](<https://devfeed.tech/tags/aws.md>), [cni](<https://devfeed.tech/tags/cni.md>), [competition](<https://devfeed.tech/tags/competition.md>), [cost](<https://devfeed.tech/tags/cost.md>), [ip](<https://devfeed.tech/tags/ip.md>), [ipv4](<https://devfeed.tech/tags/ipv4.md>), [ipv6](<https://devfeed.tech/tags/ipv6.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [nat](<https://devfeed.tech/tags/nat.md>), [networking](<https://devfeed.tech/tags/networking.md>), [networks](<https://devfeed.tech/tags/networks.md>), [vpc](<https://devfeed.tech/tags/vpc.md>)

### AI overview

A field report on deploying an IPv6-first Amazon Elastic Kubernetes Service platform on AWS. It explains how IPv6 pods, VPC networking, and an egress-only Internet gateway reduce dependence on NAT gateways and public IPv4 addresses, while legacy IPv4-only dependencies such as databases, payment APIs, and container registries still impose compatibility requirements and costs.

### Source excerpt

In this field report on IPv6-first Amazon Elastic Kubernetes Service (EKS), the isp6 team shares which dependencies still drag IPv4 back in, what they learnt from /28s, and why the saving is large but not automatic.

## IP Addressing, Part II: Scaling IPv4 Across the Internet

DevFeed: [IP Addressing, Part II: Scaling IPv4 Across the Internet](<https://devfeed.tech/articles/ip-addressing-part-ii-scaling-ipv4-across-the-internet-18195.md>)

Original publisher: [Read original article](<https://newsletter.francofernando.com/p/ip-addressing-part-ii-scaling-ipv4>)

Author: Franco Fernando

Published: 2026-08-01T11:36:30Z

Content type: article

Language: en

Sources: [The Polymathic Engineer](<https://devfeed.tech/sources/the-polymathic-engineer.md>)

Topics: [Internet](<https://devfeed.tech/topics/internet.md>)

Tags: [internet](<https://devfeed.tech/tags/internet.md>), [ip](<https://devfeed.tech/tags/ip.md>), [ipv4](<https://devfeed.tech/tags/ipv4.md>), [nat](<https://devfeed.tech/tags/nat.md>)

### AI overview

This article explains how CIDR replaced classful addressing and how private addresses and NAT helped extend the usable life of IPv4.

### Source excerpt

How classful addressing gave way to CIDR, and how private addresses and NAT kept the world from running out of IPv4.

## Remote Access That Works Behind NAT, CGNAT, and Uncontrolled Firewalls

DevFeed: [Remote Access That Works Behind NAT, CGNAT, and Uncontrolled Firewalls](<https://devfeed.tech/articles/remote-access-that-works-behind-nat-cgnat-and-uncontrolled-firewalls-29799.md>)

Original publisher: [Read original article](<https://goteleport.com/blog/remote-access-nat-cgnat-firewalls/>)

Author: info@goteleport.com (Steven Martin)

Published: 2026-05-28T00:00:00Z

Content type: tutorial

Language: en

Sources: [Teleport](<https://devfeed.tech/sources/teleport.md>)

Topics: [remote access](<https://devfeed.tech/topics/remote-access.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [ssh](<https://devfeed.tech/topics/ssh.md>), [Virtual Private Network](<https://devfeed.tech/topics/vpn.md>), [Firewall](<https://devfeed.tech/topics/firewall.md>), [Network](<https://devfeed.tech/topics/network.md>)

Tags: [authorization](<https://devfeed.tech/tags/authorization.md>), [devices](<https://devfeed.tech/tags/devices.md>), [firewall](<https://devfeed.tech/tags/firewall.md>), [guide](<https://devfeed.tech/tags/guide.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [nat](<https://devfeed.tech/tags/nat.md>), [network](<https://devfeed.tech/tags/network.md>), [remote-access](<https://devfeed.tech/tags/remote-access.md>), [ssh](<https://devfeed.tech/tags/ssh.md>), [vpn](<https://devfeed.tech/tags/vpn.md>)

### AI overview

This guide explains why inbound SSH and VPN access can fail for remote devices behind NAT, CGNAT, or customer-controlled firewalls. It introduces outbound connections and device identity as approaches for routing access and maintaining authorization across network changes.

### Source excerpt

In this guide, learn how to securely access remote devices behind NAT, CGNAT, or uncontrolled firewalls.

## Cloudflare's Automatic Return Routing Is Described as Inter-VRF NAT at Scale

DevFeed: [Cloudflare's Automatic Return Routing Is Described as Inter-VRF NAT at Scale](<https://devfeed.tech/articles/hmmm-cloudflare-s-automatic-return-routing-11389.md>)

Original publisher: [Read original article](<https://blog.ipspace.net/2026/05/worth-reading-cloudflare-automatic-return-routing/>)

Published: 2026-05-06T06:12:00Z

Content type: opinion

Language: en

Sources: [ipSpace.net blog](<https://devfeed.tech/sources/ipspace-net-blog.md>)

Topics: [Cloudflare](<https://devfeed.tech/topics/cloudflare.md>), [Routing (disambiguation)](<https://devfeed.tech/topics/routing.md>), [networking](<https://devfeed.tech/topics/networking.md>), [Virtual Private Network](<https://devfeed.tech/topics/vpn.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [blog](<https://devfeed.tech/tags/blog.md>), [cloudflare](<https://devfeed.tech/tags/cloudflare.md>), [nat](<https://devfeed.tech/tags/nat.md>), [routing](<https://devfeed.tech/tags/routing.md>), [technology](<https://devfeed.tech/tags/technology.md>), [vpn](<https://devfeed.tech/tags/vpn.md>), [worth-reading](<https://devfeed.tech/tags/worth-reading.md>)

### AI overview

The article critiques Cloudflare's marketing of Automatic Return Routing, arguing that its session-based forwarding and address remapping are effectively VRFs and NAT in another form. It also notes that the solution appears to demonstrate session-based forwarding at scale, while leaving its speed and CPU requirements as open questions.

### Source excerpt

A while ago, I found the How Automatic Return Routing solves IP overlap article on Cloudflare's blog. They evidently have a technology that addresses a pain point well worth solving (access to shared resources from clients using overlapping address ranges). I just hate how they're selling it. Go read the article first; I'll wait. OK, here's what bothers me: the "VRFs and NAT are bad" claims, while they use the same technology in disguise. Read more ...

## Response: Peer-to-Peer Communication in IPv6 World

DevFeed: [Response: Peer-to-Peer Communication in IPv6 World](<https://devfeed.tech/articles/response-peer-to-peer-communication-in-ipv6-world-11173.md>)

Original publisher: [Read original article](<https://blog.ipspace.net/2025/04/response-peer-to-peer-apps-ipv6/>)

Published: 2025-04-15T05:23:00Z

Content type: opinion

Language: en

Sources: [ipSpace.net blog](<https://devfeed.tech/sources/ipspace-net-blog.md>)

Topics: [P2P](<https://devfeed.tech/topics/p2p.md>), [Networks](<https://devfeed.tech/topics/networks.md>), [Firewall](<https://devfeed.tech/topics/firewall.md>), [WebRTC](<https://devfeed.tech/topics/webrtc.md>)

Tags: [firewall](<https://devfeed.tech/tags/firewall.md>), [firewalls](<https://devfeed.tech/tags/firewalls.md>), [ipv6](<https://devfeed.tech/tags/ipv6.md>), [nat](<https://devfeed.tech/tags/nat.md>), [p2p](<https://devfeed.tech/tags/p2p.md>), [webrtc](<https://devfeed.tech/tags/webrtc.md>)

### AI overview

This article presents Daryll Swer's response about peer-to-peer communication over IPv6. It argues that native IPv6 avoids shared-address NAT and related port-exhaustion issues, while stateful firewalls can still affect connectivity. The response reports successful STUN-based IPv6 peer connections in tested applications but notes that many CGNAT deployments remain problematic.

### Source excerpt

Daryll Swer posted a very informative response to my NAT Traversal Mess blog post, focusing on: Punching holes through that firewall is equivalent to establishing NAT translations. It would be a shame to let that response wither as small print at the bottom of a blog post; here it is: Read more ...

## Response: NAT Traversal Mess

DevFeed: [Response: NAT Traversal Mess](<https://devfeed.tech/articles/response-nat-traversal-mess-11172.md>)

Original publisher: [Read original article](<https://blog.ipspace.net/2025/04/response-nat-traversal/>)

Published: 2025-04-10T06:00:00Z

Content type: opinion

Language: en

Sources: [ipSpace.net blog](<https://devfeed.tech/sources/ipspace-net-blog.md>)

Topics: [networking](<https://devfeed.tech/topics/networking.md>), [firewalls](<https://devfeed.tech/topics/firewalls.md>), [client](<https://devfeed.tech/topics/client.md>), [Protocol (disambiguation)](<https://devfeed.tech/topics/protocol.md>)

Tags: [connectivity](<https://devfeed.tech/tags/connectivity.md>), [firewalls](<https://devfeed.tech/tags/firewalls.md>), [github](<https://devfeed.tech/tags/github.md>), [internet](<https://devfeed.tech/tags/internet.md>), [libraries](<https://devfeed.tech/tags/libraries.md>), [nat](<https://devfeed.tech/tags/nat.md>), [networking](<https://devfeed.tech/tags/networking.md>), [openssh](<https://devfeed.tech/tags/openssh.md>), [pypi](<https://devfeed.tech/tags/pypi.md>), [python](<https://devfeed.tech/tags/python.md>), [security](<https://devfeed.tech/tags/security.md>), [video-conferencing](<https://devfeed.tech/tags/video-conferencing.md>)

### AI overview

The article examines NAT traversal for client-to-client connectivity, explaining the roles and limitations of STUN, TURN, and ICE, and contrasting them with protocols that request public ports from NAT devices. It argues that NAT remains difficult to avoid and notes the availability of libraries that simplify implementation.

### Source excerpt

Let's look at another part of the lengthy comment Bob left after listening to the Rise of NAT podcast. This one is focused on the NAT traversal mess: You mentioned that only video-conferencing and BitTorrent use client-to-client connectivity (and they are indeed the main use cases), but hell, do they need to engineer complex systems to circumvent these NATs and firewalls: STUN, TURN, ICE, DHT... Cleaning up the acronym list first: DHT is unlike the others and has nothing to do with NAT. Read more ...

## Response: Any-to-Any Connectivity in the Internet

DevFeed: [Response: Any-to-Any Connectivity in the Internet](<https://devfeed.tech/articles/response-any-to-any-connectivity-in-the-internet-11156.md>)

Original publisher: [Read original article](<https://blog.ipspace.net/2025/03/response-end-to-end-connectivity/>)

Published: 2025-03-27T06:45:00Z

Content type: opinion

Language: en

Sources: [ipSpace.net blog](<https://devfeed.tech/sources/ipspace-net-blog.md>)

Topics: [Internet](<https://devfeed.tech/topics/internet.md>), [client](<https://devfeed.tech/topics/client.md>), [networking](<https://devfeed.tech/topics/networking.md>), [firewalls](<https://devfeed.tech/topics/firewalls.md>)

Tags: [firewalls](<https://devfeed.tech/tags/firewalls.md>), [internet](<https://devfeed.tech/tags/internet.md>), [ipv6](<https://devfeed.tech/tags/ipv6.md>), [nat](<https://devfeed.tech/tags/nat.md>), [protocol](<https://devfeed.tech/tags/protocol.md>)

### AI overview

The article responds to criticism of claims about the rise of NAT and argues that NATs and firewalls contributed to the Internet's client/server asymmetry. It contends that early IP networking generally provided any-to-any connectivity, while the client/server split emerged as lower-end personal computers became common and NAT gained acceptance as a pragmatic boundary between internal and public networks.

### Source excerpt

Bob left a lengthy comment arguing with the (somewhat black-and-white) claims I made in the Rise of NAT podcast. Let's start with the any-to-any connectivity: From my young millennial point of view, the logic is reversed: it is because of NATs and firewalls that the internet became so asymmetrical (client/server) just like the Minitel was designed (yes, I am French), whereas the Internet (and later the web, although a client/server protocol, was meant for everyone to be a client and a server) was designed to be more balanced. Let's start with the early Internet. It had no peer-to-peer applications. It connected a few large computers (mainframes) that could act as servers but also allowed terminal-based user access and thus ran per-user clients. Read more ...

## IPv6 Support for Multiple Routers and Multiple Interfaces

DevFeed: [IPv6 Support for Multiple Routers and Multiple Interfaces](<https://devfeed.tech/articles/ipv6-support-for-multiple-routers-and-multiple-interfaces-11096.md>)

Original publisher: [Read original article](<https://blog.ipspace.net/2024/11/ipv6-multihoming-draft/>)

Published: 2024-11-28T10:57:00Z

Content type: opinion

Language: en

Sources: [ipSpace.net blog](<https://devfeed.tech/sources/ipspace-net-blog.md>)

Topics: [Internet Engineering Task Force (IETF)](<https://devfeed.tech/topics/ietf.md>), [Networks](<https://devfeed.tech/topics/networks.md>), [Internet](<https://devfeed.tech/topics/internet.md>), [Protocol (disambiguation)](<https://devfeed.tech/topics/protocol.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>)

Tags: [ietf](<https://devfeed.tech/tags/ietf.md>), [internet](<https://devfeed.tech/tags/internet.md>), [ipv6](<https://devfeed.tech/tags/ipv6.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [nat](<https://devfeed.tech/tags/nat.md>), [networks](<https://devfeed.tech/tags/networks.md>), [protocol](<https://devfeed.tech/tags/protocol.md>), [tcp](<https://devfeed.tech/tags/tcp.md>)

### AI overview

The article comments on Fernando Gont's Individual Internet Draft about IPv6 support for multiple routers and interfaces. It argues that the draft clearly describes a long-standing multihoming problem and says current practical options are NAT or rarely implemented host-based solutions, while questioning whether an IETF working group will adopt the draft.

### Source excerpt

Fernando Gont published an Individual Internet Draft (meaning it hasn't been adopted by any IETF WG yet) describing the Problem Statement about IPv6 Support for Multiple Routers and Multiple Interfaces. It's so nice to see someone finally acknowledging the full scope of the problem and describing it succinctly. However, I cannot help but point out that: I was ranting about that problem in 2009 (15 years ago) and did a summary of older rants in 2015. It was evident to everyone but the religious zealots that the only solution we have at the moment is either NAT (because stuff simply does not work otherwise) or host-based solutions that never got implemented (apart from a few rare cases of multipath TCP). Anyway, Fernando wraps up his draft with: Read more ...

## SSH Tunnel - Local and Remote Port Forwarding Explained With Examples

DevFeed: [SSH Tunnel - Local and Remote Port Forwarding Explained With Examples](<https://devfeed.tech/articles/ssh-tunnel-local-and-remote-port-forwarding-explained-with-examples-20372.md>)

Original publisher: [Read original article](<https://blog.sensible.io/2014/05/17/ssh-tunnel-local-and-remote-port-forwarding-explained-with-examples.html>)

Author: sensible.io team

Published: 2014-05-17T17:57:00Z

Content type: tutorial

Language: en

Sources: [Sensible](<https://devfeed.tech/sources/sensible.md>)

Topics: [ssh](<https://devfeed.tech/topics/ssh.md>), [OpenSSH](<https://devfeed.tech/topics/openssh.md>), [Database](<https://devfeed.tech/topics/database.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [Firewall](<https://devfeed.tech/topics/firewall.md>), [Rails](<https://devfeed.tech/topics/rails.md>), [SockTz](<https://devfeed.tech/topics/socktz.md>)

Tags: [browser](<https://devfeed.tech/tags/browser.md>), [database](<https://devfeed.tech/tags/database.md>), [examples](<https://devfeed.tech/tags/examples.md>), [firewall](<https://devfeed.tech/tags/firewall.md>), [local](<https://devfeed.tech/tags/local.md>), [nat](<https://devfeed.tech/tags/nat.md>), [network](<https://devfeed.tech/tags/network.md>), [port](<https://devfeed.tech/tags/port.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [rails](<https://devfeed.tech/tags/rails.md>), [remote](<https://devfeed.tech/tags/remote.md>), [security](<https://devfeed.tech/tags/security.md>), [server](<https://devfeed.tech/tags/server.md>), [ssh](<https://devfeed.tech/tags/ssh.md>), [syntax](<https://devfeed.tech/tags/syntax.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>)

### AI overview

A tutorial explaining SSH local and remote port forwarding through examples, including access to blocked web resources, databases behind firewalls, and locally hosted applications without public IP addresses.

### Source excerpt

There are two ways to create an SSH tunnel, local and remote port forwarding (there's also dynamic forwarding, but we won't cover that here). The best way to understand these is by an example, let's start with local port forwarding. Imagine you're on a private network which doesn't allow connections to a specific server. Let's say you're at work and imgur.com is being blocked. To get around this we can create a tunnel through a server which isn't on our network and thus can access Imgur. $ ssh -L 9000:imgur.com:80 user@example.com The key here is -L which says we're doing local port forwarding. Then it says we're forwarding our local port 9000 to imgur.com:80, which is the default port for HTTP. Now open your browser and go to http://localhost:9000. The awesome thing about SSH tunnels is that they are encrypted. Nobody is going to see what sites you're visiting, they'll only see an SSH connection to your server. Connecting to a database behind a firewall Another good example is if you need to access a port on your server which can only be accessed from localhost and not remotely. An example here is when you need to connect to a database console, which only allows local connection for security reasons. Let's say you're running PostgreSQL on your server, which by default listens on the port 5432. $ ssh -L 9000:localhost:5432 user@example.com The part that changed here is the localhost:5432, which says to forward connections from your local port 9000 to localhost:5432 on your server. Now we can simply connect to our database. $ psql -h localhost -p 9000 Now let's stop here for a little bit an explain what is actually going on. In the first example the 9000:imgur.com:80 is actually saying forward my local port 9000 to imgur.com at port 80. You can imagine SSH on your server actually making a connection (a tunnel) between those two ports, one on your local machine, and one on the target destination. If we however say something like 9000:localhost:5432, it means localhost

## Bind before connect

DevFeed: [Bind before connect](<https://devfeed.tech/articles/bind-before-connect-38934.md>)

Original publisher: [Read original article](<https://idea.popcount.org/2014-04-03-bind-before-connect>)

Author: Marek

Published: 2014-04-02T22:00:00Z

Content type: tutorial

Language: en

Sources: [Marek Majkowski](<https://devfeed.tech/sources/marek-majkowski.md>)

Topics: [Linux Kernel](<https://devfeed.tech/topics/linux-kernel.md>), [TCP/IP](<https://devfeed.tech/topics/tcp-ip.md>), [API](<https://devfeed.tech/topics/api.md>), [Code](<https://devfeed.tech/topics/code.md>), [Python](<https://devfeed.tech/topics/python.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [linux](<https://devfeed.tech/tags/linux.md>), [linux-kernel](<https://devfeed.tech/tags/linux-kernel.md>), [nat](<https://devfeed.tech/tags/nat.md>), [port](<https://devfeed.tech/tags/port.md>), [python](<https://devfeed.tech/tags/python.md>), [socket](<https://devfeed.tech/tags/socket.md>), [tcp-ip](<https://devfeed.tech/tags/tcp-ip.md>)

### AI overview

This article explains how the Linux kernel allocates source ports for TCP/IP connections, including ephemeral port selection, port reuse, connection limits, and the bind-before-connect technique.

### Source excerpt

Bind before connect A TCP/IP connection is identified by a four element tuple: {source IP, source port, destination IP, destination port}. To establish a TCP/IP connection only a destination IP and port number are needed, the operating system automatically selects source IP and port. This article explains how the Linux kernel does the source port allocation. Ephemeral port range To establish a connection BSD API requires two steps: first you need to create a socket, then call on it.

## Configuring dnsmasq with VMware Workstation

DevFeed: [Configuring dnsmasq with VMware Workstation](<https://devfeed.tech/articles/configuring-dnsmasq-with-vmware-workstation-21921.md>)

Original publisher: [Read original article](<https://blog.nelhage.com/2010/10/dnsmasq-and-vmware/>)

Author: Nelson Elhage

Published: 2010-10-24T23:15:23Z

Content type: tutorial

Language: en

Sources: [Nelson Elhage](<https://devfeed.tech/sources/nelson-elhage.md>)

Topics: [networking](<https://devfeed.tech/topics/networking.md>), [Network](<https://devfeed.tech/topics/network.md>), [Development](<https://devfeed.tech/topics/development.md>), [Server](<https://devfeed.tech/topics/server.md>), [ssh](<https://devfeed.tech/topics/ssh.md>)

Tags: [development](<https://devfeed.tech/tags/development.md>), [dhcp](<https://devfeed.tech/tags/dhcp.md>), [domain](<https://devfeed.tech/tags/domain.md>), [install](<https://devfeed.tech/tags/install.md>), [linux](<https://devfeed.tech/tags/linux.md>), [local](<https://devfeed.tech/tags/local.md>), [nat](<https://devfeed.tech/tags/nat.md>), [network](<https://devfeed.tech/tags/network.md>), [networking](<https://devfeed.tech/tags/networking.md>), [server](<https://devfeed.tech/tags/server.md>), [ssh](<https://devfeed.tech/tags/ssh.md>), [vmware](<https://devfeed.tech/tags/vmware.md>), [workstation](<https://devfeed.tech/tags/workstation.md>)

### AI overview

A tutorial on configuring VMware Workstation virtual machines to use dnsmasq for DHCP address assignment and local DNS resolution, allowing VM hostnames to be accessed from the host over a local NAT network.

### Source excerpt

I love VMware workstation. I keep VMs around for basically every version of every major Linux distribution, and use them heavily for all kinds of kernel testing and development. This post is a quick writeup of my networking setup with VMware Workstation, using dnsmasq to assign my VMs addresses and provide a DNS server to resolve VM addresses. The objective I want to be able to resolve my VM's hostnames so that I can ssh to them, or run other network services and access them from the host.