### Is there an existing issue for this?

- [X] I have searched the existing issues

### Feature description

Allow lambda container to have multiple networks not just one.
With the current implementation Lambda network only gets a single network, even though the Localstack container accepts multiple network values.
this is how it works currently:

> Gets the main network of the LocalStack container (if we run in one, bridge otherwise)
    If there are multiple networks connected to the LocalStack container, we choose the first as "main" network

### 🧑‍💻 Implementation

This is where the "main" network value is retrieved, may be it should be a List?
https://github.com/localstack/localstack/blob/a71e661fa6b0189e54b468713f710f0ae1b93791/localstack/utils/container_networking.py#L14

### Anything else?

_No response_
"""Extract a function name from a arn/function name"""
    return FUNCTION_NAME_REGEX.match(arn).group("name")
def get_awslambda_store(
    account_id: Optional[str] = None, region: Optional[str] = None
) -> AwsLambdaStore:
    """Get the legacy Lambda store."""
    account_id = account_id or get_aws_account_id()
    region = region or aws_stack.get_region()
    return awslambda_stores[account_id][region]
def get_awslambda_store_for_arn(resource_arn: str) -> AwsLambdaStore:
    """
    Return the store for the region extracted from the given resource ARN.
    """
    return get_awslambda_store(
        account_id=extract_account_id_from_arn(resource_arn or ""),
        region=extract_region_from_arn(resource_arn or ""),
    )
def message_attributes_to_lower(message_attrs):
    """Convert message attribute details (first characters) to lower case (e.g., stringValue, dataType)."""
    message_attrs = message_attrs or {}
    for _, attr in message_attrs.items():
        if not isinstance(attr, dict):
            continue
        for key, value in dict(attr).items():
            attr[first_char_to_lower(key)] = attr.pop(key)
    return message_attrs