Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VoWiFi on Pixel7/Android14/SDK34 #315

Open
090h opened this issue Sep 10, 2024 · 5 comments
Open

VoWiFi on Pixel7/Android14/SDK34 #315

090h opened this issue Sep 10, 2024 · 5 comments

Comments

@090h
Copy link

090h commented Sep 10, 2024

After a long hesitant update of the phone firmware from UQ1A.231205.015/pims 1.2.4 to the most recent one VoWiFi stopped to work. Im out of luck in turning it working back. logcat suggest it fails at EAP for some unknown reason:

*33.526 D IKE     : IkeConnectionController: Set up on Network **8
*33.527 D IKE     : Ike3gppExtensionExchange: IKE 3GPP Extension enabled: Ike3gppParams={ mPduSessionId=0* mDeviceIdentity=*******33 }
*33.531 D EpdgTunnelManager[1]: Added APN: IMS to TunnelConfig
*33.538 D IKE     : IkeConnectionController: Resolved addresses for peer: [/***.**.***.1] to replace old addresses: v4=[] v6=[]
*33.544 D IKE     : IkeSessionStateMachine: processStateMessage: Create IKE
*33.545 D IKE     : IkeSaPayload: Generate SA Request: Proposal(1) IKE: ENCR_AES_CBC(128)|ENCR_AES_CBC(192)|ENCR_AES_CBC(256)|AUTH_AES_XCBC_96|AUTH_HMAC_SHA1_96|AUTH_HMAC_SHA2_256_128|AUTH_HMAC_SHA2_384_192|AUTH_HMAC_SHA2_512_256|DH_1024_BIT_MODP|DH_1536_BIT_MODP|DH_2048_BIT_MODP|PRF_HMAC_SHA1|PRF_AES128_XCBC|PRF_HMAC2_256|PRF_HMAC2_384|PRF_HMAC2_512
*33.551 D IKE     : IkeSessionStateMachine:  Faking NAT situation to enforce UDP encapsulation
*33.552 D IKE     : IkeMessage: Generating IKE INIT request 0
*33.553 D IKE     : IkeMessage: Generating payloads [ SA KE Nonce Notify(NAT detection source IP) Notify(NAT detection destination IP) Notify(Fragmentation supported) Notify(Generic Digital Signatures supported) ]
*33.553 D IKE     : IkeMessage: Build a complete IKE message: ******08
*33.553 D IKE     : IkeMessage: Generating IKE INIT request 0
*33.553 D IKE     : IkeMessage: Generating payloads [ SA KE Nonce Notify(NAT detection source IP) Notify(NAT detection destination IP) Notify(Fragmentation supported) Notify(Generic Digital Signatures supported) ]
*33.553 D IKE     : IkeMessage: Build a complete IKE message: ******33
*33.553 D IKE     : IkeUdp4Socket: Sending packet to ***.**.***.1( 432 bytes)
*33.556 D IKE     : IkeNetworkCallbackBase: onCapabilitiesChanged: **8networkCapabilities [ Transports: WIFI Capabilities: NOT_METERED&INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VPN&VALIDATED&NOT_ROAMING&FOREGROUND&NOT_CONGESTED&NOT_SUSPENDED&NOT_VCN_MANAGED LinkUpBandwidth>=1396Kbps LinkDnBandwidth>=8096Kbps TransportInfo: <SSID: <unknown ssid>, BSSID: 02:00:00:00:00:00, MAC: 02:00:00:00:00:00, IP: /***.***.*.187, Security type: 2, Supplicant state: COMPLETED, Wi-Fi standard: 11n, RSSI: -54, Link speed: 115Mbps, Tx Link speed: 115Mbps, Max Supported Tx Link speed: 300Mbps, Rx Link speed: 144Mbps, Max Supported Rx Link speed: 300Mbps, Frequency: 2437MHz, Net ID: -1, Metered hint: false, score: 60, isUsable: true, CarrierMerged: false, SubscriptionId: -1, IsPrimary: 1, Trusted: true, Restricted: false, Ephemeral: false, OEM paid: false, OEM private: false, OSU AP: false, FQDN: <none>, Provider friendly name: <none>, Requesting package name: <none><none>MLO Information: , Is TID-To-Link negotiation supported by the AP: false, AP MLD Address: <none>, AP MLO Link Id: <none>, AP MLO Affiliated links: <none>, Vendor Data: <none>> SignalStrength: -54 AdminUids: [1000] SSID: "********" UnderlyingNetworks: Null]
*33.556 D IKE     : IkeNetworkCallbackBase: onLinkPropertiesChanged: **8
*33.738 D IKE     : IkeUdp4Socket: Received packet
*33.739 D IKE     : IkeUdpSocket: Receive packet of 288 bytes)
*33.739 D IKE     : IkeUdpSocket: ******70
*33.740 D IKE     : IkeSessionStateMachine: processStateMessage: Rcv packet
*33.740 D IKE     : IkeSessionStateMachine: handleReceivedIkePacket: Received an IKE INIT response 0. Packet size: 288
*33.741 D IKE     : IkeSaPayload: Receive SA Response: Proposal(1) IKE: ENCR_AES_CBC(128)|AUTH_HMAC_SHA1_96|DH_1024_BIT_MODP|PRF_HMAC_SHA1
*33.742 W IKE     : IkeNotifyPayload: Expected Procotol ID unset: Protocol ID is 1
*33.742 W IKE     : IkeNotifyPayload: Expected Procotol ID unset: Protocol ID is 1
*33.742 D IKE     : IkeMessage: Decoded payloads [ SA KE Nonce Notify(NAT detection source IP) Notify(NAT detection destination IP) ]
*33.745 D IKE     : IkeConnectionController: Switching to send to remote port 4500 if it's not already
*33.764 D IKE     : IkeNattKeepalive: Start NAT-T keepalive
*33.766 D IKE     : new IkeAlarmWithListener for IkeAlarmReceiver.ACTION_DELETE_IKE
*33.766 D IKE     : new IkeAlarmWithListener for IkeAlarmReceiver.ACTION_REKEY_IKE
*33.774 D IKE     : IkeSaRecord: SK_ai: *********
*33.774 D IKE     : IkeSaRecord: SK_ar: *********
*33.774 D IKE     : IkeSaRecord: SK_ei: *******
*33.774 D IKE     : IkeSaRecord: SK_er: *******
*33.778 D IKE     : IkeSaRecord: Lifetime alarm set: Hard lifetime (14400000ms) Soft lifetime (7200000ms)
*33.779 D IKE     : IkeSaRecord: SK_d: ********
*33.779 D IKE     : IkeSaRecord: SK_pi: ********
*33.779 D IKE     : IkeSaRecord: SK_pr: ********
*33.782 D IKE     : IkeSaPayload: Generate SA Request: Proposal(1) ESP: ENCR_AES_CBC(128)|ENCR_AES_CBC(192)|ENCR_AES_CBC(256)|AUTH_AES_XCBC_96|AUTH_HMAC_SHA1_96|AUTH_HMAC_SHA2_256_128|AUTH_HMAC_SHA2_384_192|AUTH_HMAC_SHA2_512_256|ESN_No_Extended
*33.783 D IKE     : IkeMessage: Generating IKE AUTH request 1
*33.783 D IKE     : IkeMessage: Generating payloads [ IDi IDr Notify(EAP-only Authentication) Notify(MOBIKE supported) Notify(16384) SA TSi TSr CP(Req) Notify(51015) ]
*33.785 D IKE     : IkeMessage: Build a complete IKE message: *******68
*33.785 D IKE     : IkeUdpEncapPortPacketHandler: Send packet to ***.**.***.1( 348 bytes)
*33.940 D IKE     : IkeUdpEncapSocket: Received packet
*33.940 D IKE     : IkeUdpEncapPortPacketHandler: Receive packet of 140 bytes)
*33.940 D IKE     : IkeUdpEncapPortPacketHandler: *******09
*33.941 D IKE     : IkeSessionStateMachine: processStateMessage: Rcv packet
*33.941 D IKE     : IkeSessionStateMachine: handleReceivedIkePacket: Received an IKE AUTH response 1 on IKE SA with local SPI: -***************2040. Packet size: 140
*33.942 D IKE     : IkeMessage: Decoded payloads [ IDr EAP Notify(41101) ]
*33.942 D IKE     : IkeSessionStateMachine: TempFailureHandler: Reset Temporary failure retry timeout
*33.943 D EAP     : EapStateMachine: Starting EapStateMachine with EAP-Identity=****8686 and configs=[23]
*33.943 D EAP     : EapStateMachine: Transitioning from  to CreatedState
*33.943 D IKE     : IkeSessionStateMachine: processStateMessage: Start EAP
*33.945 D EAP     : CreatedState: Received packet=[******372]
*33.946 I EAP     : CreatedState: Decoded message: EAP-REQUEST/EAP-AKA
*33.946 D EAP     : MethodState: Received packet=[******372]
*33.946 I EAP     : MethodState: Decoded message: EAP-REQUEST/EAP-AKA
*33.947 D EAP     : EapAkaMethodStateMachine: EapAkaConfig: subId=1 apptype=2
*33.947 D EAP     : EapAkaMethodStateMachine: Transitioning from  to CreatedState
*33.948 I EAP     : EapAkaTypeDataDecoder: Decoded EAP-AKA type data: Identity attributes=[ AT_PERMANENT_ID_REQ ]
*33.949 E EAP     : EapAkaMethodStateMachine: getAvailableReauthInfo with NULL ID
*33.949 I EAP     : EapAkaTypeDataDecoder: Decoded EAP-AKA type data: Identity attributes=[ AT_PERMANENT_ID_REQ ]
*33.956 D EAP     : IdentityState: Send EAP-AKA/Identity response with permanent ID:-*******702
*33.956 I EAP     : EapAuthenticator: EapStateMachine returned EapResponse
*33.957 D IKE     : IkeSessionStateMachine: processStateMessage: EAP outbound msg ready
*33.957 D IKE     : IkeMessage: Generating IKE AUTH request 2
*33.957 D IKE     : IkeMessage: Generating payloads [ EAP ]
*33.957 D IKE     : IkeMessage: Build a complete IKE message: ******42
*33.957 D IKE     : IkeUdpEncapPortPacketHandler: Send packet to ***.**.***.1( 108 bytes)
*34.146 D IKE     : IkeUdpEncapSocket: Received packet
*34.147 D IKE     : IkeUdpEncapPortPacketHandler: Receive packet of 172 bytes)
*34.147 D IKE     : IkeUdpEncapPortPacketHandler: *****539
*34.148 D IKE     : IkeSessionStateMachine: processStateMessage: Rcv packet
*34.148 D IKE     : IkeSessionStateMachine: handleReceivedIkePacket: Received an IKE AUTH response 2 on IKE SA with local SPI: -***************2040. Packet size: 172
*34.150 D IKE     : IkeMessage: Decoded payloads [ EAP ]
*34.150 D IKE     : IkeSessionStateMachine: TempFailureHandler: Reset Temporary failure retry timeout
*34.151 D EAP     : MethodState: Received packet=[******320]
*34.151 I EAP     : MethodState: Decoded message: EAP-REQUEST/EAP-AKA
*34.151 D EAP     : EapAkaTypeDataDecoder: Unsupported EAP attribute during decoding: 134
*34.152 I EAP     : EapAkaTypeDataDecoder: Decoded EAP-AKA type data: Challenge attributes=[ AT_RAND AT_AUTN AT_CHECKCODE AT_BIDDING AT_MAC ]
*34.152 D EAP     : EapAkaTypeDataDecoder: Unsupported EAP attribute during decoding: 134
*34.152 I EAP     : EapAkaTypeDataDecoder: Decoded EAP-AKA type data: Challenge attributes=[ AT_RAND AT_AUTN AT_CHECKCODE AT_BIDDING AT_MAC ]
*34.379 D EAP     : ChallengeState: RAND=*********
*34.379 D EAP     : ChallengeState: AUTN=*********
*34.379 D EAP     : ChallengeState: RES=*********
*34.379 D EAP     : ChallengeState: IK=*********
*34.379 D EAP     : ChallengeState: CK=*********
*34.381 D EAP     : ChallengeState: MK input=********
*34.382 D EAP     : ChallengeState: MK=********
*34.382 D EAP     : ChallengeState: K_encr=*********
*34.382 D EAP     : ChallengeState: K_aut=*********
*34.382 D EAP     : ChallengeState: MSK=*********
*34.382 D EAP     : ChallengeState: EMSK=*********
*34.382 D EAP     : ChallengeState: Computing MAC (raw msg): *******88
*34.382 D EAP     : EapAkaMethodStateMachine: Computing MAC (mac cleared): *******33
*34.382 D EAP     : ChallengeState: AT_ENCR_DATA is not included.
*34.383 D EAP     : EapAkaMethodStateMachine: Computing MAC (mac cleared): ******50
*34.383 I EAP     : EapAuthenticator: EapStateMachine returned EapResponse
*34.383 D IKE     : IkeSessionStateMachine: processStateMessage: EAP outbound msg ready
*34.384 D IKE     : IkeMessage: Generating IKE AUTH request 3
*34.384 D IKE     : IkeMessage: Generating payloads [ EAP ]
*34.386 D IKE     : IkeMessage: Build a complete IKE message: *******35
*34.386 D IKE     : IkeUdpEncapPortPacketHandler: Send packet to ***.**.***.1( 108 bytes)
*34.662 D IKE     : IkeUdpEncapSocket: Received packet
*34.662 D IKE     : IkeUdpEncapPortPacketHandler: Receive packet of 76 bytes)
*34.662 D IKE     : IkeUdpEncapPortPacketHandler: ********8
*34.662 D IKE     : IkeSessionStateMachine: processStateMessage: Rcv packet
*34.663 D IKE     : IkeSessionStateMachine: handleReceivedIkePacket: Received an IKE AUTH response 3 on IKE SA with local SPI: -***************2040. Packet size: 76
*34.663 D IKE     : IkeMessage: Decoded payloads [ EAP ]
*34.664 D IKE     : IkeSessionStateMachine: TempFailureHandler: Reset Temporary failure retry timeout
*34.664 D EAP     : MethodState: Received packet=[******81]
*34.664 I EAP     : MethodState: Decoded message: EAP-FAILURE
*34.665 D EAP     : EapAkaMethodStateMachine: Transitioning from ChallengeState to FinalState
*34.665 D EAP     : EapStateMachine: Transitioning from MethodState to FailureState
*34.665 I EAP     : EapAuthenticator: EapStateMachine returned EapFailure
*34.665 D IKE     : IkeSessionStateMachine: processStateMessage: EAP failed
*34.666 E IKE     : IkeSessionStateMachine: IKE Session fatal error in CreateIkeLocalIkeAuthInEap
*34.666 E IKE     : android.net.ipsec.ike.exceptions.AuthenticationFailedException: EAP Authentication Failed
*34.666 E IKE     :      at com.android.internal.net.ipsec.ike.IkeSessionStateMachine$CreateIkeLocalIkeAuthInEap.processStateMessage(IkeSessionStateMachine.java:4532)
*34.666 E IKE     :      at com.android.internal.net.ipsec.ike.AbstractSessionStateMachine$ExceptionHandlerBase.processMessage(AbstractSessionStateMachine.java:162)
*34.666 E IKE     :      at com.android.internal.net.ipsec.ike.utils.StateMachine$SmHandler.processMsg(StateMachine.java:1001)
*34.666 E IKE     :      at com.android.internal.net.ipsec.ike.utils.StateMachine$SmHandler.handleMessage(StateMachine.java:819)
*34.666 E IKE     :      at android.os.Handler.dispatchMessage(Handler.java:107)
*34.666 E IKE     :      at android.os.Looper.loopOnce(Looper.java:232)
*34.666 E IKE     :      at android.os.Looper.loop(Looper.java:317)
*34.666 E IKE     :      at android.os.HandlerThread.run(HandlerThread.java:85)
*34.668 D IKE     : IkeSaRecord: Hard and soft lifetime alarm cancelled
*34.670 E EpdgTunnelManager[1]: Closing tunnel with exception for apn: IMS with token: 0 sessionType:5
*34.670 W System.err: android.net.ipsec.ike.exceptions.AuthenticationFailedException: EAP Authentication Failed
*34.670 W System.err:    at com.android.internal.net.ipsec.ike.IkeSessionStateMachine$CreateIkeLocalIkeAuthInEap.processStateMessage(IkeSessionStateMachine.java:4532)
*34.670 W System.err:    at com.android.internal.net.ipsec.ike.AbstractSessionStateMachine$ExceptionHandlerBase.processMessage(AbstractSessionStateMachine.java:162)
*34.670 W System.err:    at com.android.internal.net.ipsec.ike.utils.StateMachine$SmHandler.processMsg(StateMachine.java:1001)
*34.670 W System.err:    at com.android.internal.net.ipsec.ike.utils.StateMachine$SmHandler.handleMessage(StateMachine.java:819)
*34.670 W System.err:    at android.os.Handler.dispatchMessage(Handler.java:107)
*34.670 W System.err:    at android.os.Looper.loopOnce(Looper.java:232)
*34.670 W System.err:    at android.os.Looper.loop(Looper.java:317)
*34.670 W System.err:    at android.os.HandlerThread.run(HandlerThread.java:85)
*34.672 D EpdgTunnelManager[1]: msg.what = EVENT_IKE_SESSION_CLOSED
*34.672 D EpdgTunnelManager[1]: EVENT_IKE_SESSION_CLOSED
*34.672 D EpdgTunnelManager[1]: mPendingBringUpRequests: []
*34.673 E EpdgTunnelManager[1]: Closing tunnel: error: TYPE: IWLAN_IKE_PROTOCOL_EXCEPTION ERR: 24
*34.673 E EpdgTunnelManager[1]: DATA: state: IKE_SESSION_INIT_IN_PROGRESS
@090h
Copy link
Author

090h commented Sep 16, 2024

After a while i think it is somehow related to IMEI ([ IDr EAP Notify(41101) ]) . There are some shenanigans with IMEI in this country. Although i believe my IMEI is valid i have yet to see something like this in logs. Notice absence of break . As usual very "high" quality of google/android code.

@samuelgarabini
Copy link

Did you solve it? My VoLTE works, but VoWifi don't. I don't know if it is a problem with IMEI

@090h
Copy link
Author

090h commented Nov 18, 2024

About after updating to android 15 it worked for a brief moment.
Now it dont. Again! And the last thing I see in the logs is:
IkeSessionStateMachine: Received unknown or unexpected status notifications with notify type: 16385
Google reworked IKEv2/EAP in android 15. And again it is a buggy piece of crap. Though can confirm it works in android 13. Gough

@samuelgarabini
Copy link

About after updating to android 15 it worked for a brief moment. Now it dont. Again! And the last thing I see in the logs is: IkeSessionStateMachine: Received unknown or unexpected status notifications with notify type: 16385 Google reworked IKEv2/EAP in android 15. And again it is a buggy piece of crap. Though can confirm it works in android 13. Gough

How can you see the logs of the carrier? Can you help me? I want to try to find out what's my problem.

@090h
Copy link
Author

090h commented Dec 22, 2024

How can you see the logs of the carrier? Can you help me? I want to try to find out what's my problem.

# adb shell ps -ef
# adb logcat --pid <pid>
or
# adb logcat | grep EAP

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants