41 articles
Universal (RM551E & RM520N)

Multi-PDP Carrier Setup: Verizon 5G & IMS

Configuring Verizon Wireless multi-PDP architecture on Quectel modems: IMS on PDP 1, vzwadmin on PDP 2, vzwinternet on PDP 3, and QMAP routing rule bug mitigations.

5 min read ยท Updated

Multi-PDP Carrier Setup: Verizon 5G & IMS

Unlike carriers such as T-Mobile or AT&T that multiplex data and signaling over a single APN context, Verizon Wireless (VZW) requires a strict Multi-PDP (Packet Data Protocol) context architecture on cellular modems. Failing to configure these separate contexts results in rejected registration, lack of SMS reception, or total loss of internet routing.

Verizon 3-PDP Architecture & Carrier Requirements#

Verizon Wireless provisions cellular devices across three distinct APN bearers:

PDP Context IDAPN NameProtocolNetwork Function & Purpose
PDP 1IMSIPV4V6IP Multimedia Subsystem: Handles VoNR/VoLTE signaling, SMS over IMS, and carrier network handshakes.
PDP 2vzwadminIPV4V6Verizon Device Management (OMA-DM), administrative provisioning, and SIM profile verification.
PDP 3vzwinternetIPV4V6Customer Broadband Payload: All public internet and user data traffic traverses this context.

If a modem defaults all IP routing to PDP Context 1 (IMS), general internet traffic will be rejected by Verizon's core packet gateway with error code 403 Forbidden or throttled to 0 kbps.

PDP Context Provisioning via AT+CGDCONT#

To establish the 3-PDP structure on your Quectel modem, open the QManager AT Terminal or serial console and issue:

AT
AT+CGDCONT=1,"IPV4V6","IMS"
AT+CGDCONT=2,"IPV4V6","vzwadmin"
AT+CGDCONT=3,"IPV4V6","vzwinternet"

Verify the configuration by querying:

AT
AT+CGDCONT?

QMAP MPDN Routing Rules for Broadband Data#

In standalone RGMII / on-modem Linux router mode, Quectel modems use QMAP (Qualcomm Multiplexing and Aggregation Protocol) to route traffic between baseband PDP contexts and the local network interface (eth0 or rmnet_data0).

To direct user data traffic to PDP Context 3 (vzwinternet), configure the MPDN rule:

AT
AT+QMAP="mpdn_rule",0,3,0,0,1

Parameter Breakdown:#

  • 0: Profile rule index (primary rule).
  • 3: Target PDP context ID (binds to Context 3 vzwinternet).
  • 0: VLAN tagging (0 = untagged).
  • 0: IP type (0 = Dual-stack IPv4/IPv6 auto).
  • 1: Target hardware network interface (1 = RGMII / eth0).

Save the configuration and reboot the radio:

AT
AT+CFUN=0
AT+CFUN=1

Preserving IMS Voice/SMS While Routing Data#

A primary advantage of the 3-PDP architecture is that incoming carrier SMS messages (such as two-factor verification codes and account alerts) are delivered reliably over the IMS bearer on PDP 1, while high-throughput internet downloads pass unhindered through PDP 3.

QManager's SMS engine automatically reads incoming messages from modem memory regardless of which PDP context handles active data routing.

Mitigating the Dec 2024 Firmware QMAP Release Bug#

Upstream Workaround:#

As documented by iamromulan, if you encounter link failure on December 2024 firmware, you can bypass the QMAP bug by swapping the context roles:

  1. Map vzwinternet directly to PDP Context 1:
    AT
    AT+CGDCONT=1,"IPV4V6","vzwinternet"
    AT+CGDCONT=2,"IPV4V6","vzwadmin"
    AT+CGDCONT=3,"IPV4V6","IMS"
  2. Bind the QMAP MPDN rule to PDP Context 1:
    AT
    AT+QMAP="mpdn_rule",0,1,0,0,1
  3. Reboot the baseband:
    AT
    AT+CFUN=1,1

This ensures broadband data functions stably while bypassing the corrupted MPDN rule router in the buggy firmware release.

Validation, Handshake Verification & Troubleshooting#

Verify that all contexts are active and have received IP leases:

  1. Query active network registration:
    AT
    AT+C5GREG?
    AT+CEREG?
  2. Query IP addresses assigned to each PDP context:
    AT
    AT+CGPADDR
    Expected response:
    +CGPADDR: 1,"10.x.x.x","2607:fb90:..."
    +CGPADDR: 2,"10.y.y.y","2607:fb90:..."
    +CGPADDR: 3,"100.z.z.z","2607:fb90:..."
  3. Confirm that PDP 3 holds a valid public/CGNAT broadband IP and verify ping connectivity from QManager:
    Bash
    ping -c 4 8.8.8.8

Community Heritage & Research Credits#

This multi-PDP configuration methodology and the December 2024 firmware bug mitigation were investigated and open-sourced by: