Well-known · Windows

138 NetBIOS Datagram

TCP Assigned
UDP Yes
SCTP
DCCP

What it is

NetBIOS datagram (connectionless) service.

When / why

Legacy Windows browsing/announcements.

Protocol status detail

TransportStatusMeaning
TCP Assigned Assigned by IANA, but not standardized, specified, or widely used on this port.
UDP Yes Assigned by IANA and standardized, specified, or widely used on this port.
SCTP Not applicable for this transport.
DCCP Not applicable for this transport.

Port range

Well-known (0–1023). System port for a core service. On Unix-like systems, binding it requires superuser privileges.

Browse all ports →

Firewall rules for port 138

Copy-ready inbound rules for the active transports. Replace every <source> placeholder with the specific host, subnet, or CIDR that should reach this port.

ufw

sudo ufw allow proto udp from <source> to any port 138

Allow UDP 138 (NetBIOS Datagram). Replace <source> with the network/host that should reach it.

firewalld

sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="<source>" port port="138" protocol="udp" accept'

Allow UDP 138 (NetBIOS Datagram) from <source>. Run 'firewall-cmd --reload' afterwards.

nftables

nft add rule inet filter input ip saddr <source> udp dport 138 accept

Allow UDP 138 (NetBIOS Datagram). Assumes table 'inet filter' with an 'input' chain.

iptables

sudo iptables -A INPUT -p udp -s <source> --dport 138 -j ACCEPT

Allow UDP 138 (NetBIOS Datagram). Persist with iptables-save/netfilter-persistent.

Azure NSG

az network nsg rule create -g <resource-group> --nsg-name <nsg> -n Allow-netbiosdatagram-138 --priority 1000 --access Allow --direction Inbound --protocol UDP --source-address-prefixes <source> --destination-port-ranges 138

Inbound rule for 138 (NetBIOS Datagram). Set <source> to a CIDR; lower priority number = higher precedence.

AWS Security Group

aws ec2 authorize-security-group-ingress --group-id <sg-id> --ip-permissions IpProtocol=udp,FromPort=138,ToPort=138,IpRanges="[{CidrIp=<source-cidr>}]"

Inbound UDP 138 (NetBIOS Datagram). Replace <source-cidr> (e.g. 10.0.0.0/16).

GCP firewall

gcloud compute firewall-rules create allow-netbiosdatagram-138 --direction=INGRESS --action=ALLOW --rules=udp:138 --source-ranges=<source-cidr> --network=<network>

Ingress rule for 138 (NetBIOS Datagram). Scope with --source-ranges and optionally --target-tags.

Windows netsh

netsh advfirewall firewall add rule name="Allow NetBIOS Datagram 138/UDP" dir=in action=allow protocol=UDP localport=138 remoteip=<source>

Inbound UDP 138 (NetBIOS Datagram). Set remoteip to a host/subnet; 'any' is discouraged.

Windows PowerShell

New-NetFirewallRule -DisplayName "Allow NetBIOS Datagram 138/UDP" -Direction Inbound -Action Allow -Protocol UDP -LocalPort 138 -RemoteAddress <source>

Inbound UDP 138 (NetBIOS Datagram). Replace <source> with a host or subnet.

Rules are generated only for transports marked active for this port. They default to an inbound allow with an explicit source placeholder — never any. Review direction, scope, and rule precedence before applying in production.