### 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_
filtered_records = []
    for record in records:
        for filter in filters:
            for rule in filter["Filters"]:
                if filter_stream_record(json.loads(rule["Pattern"]), record):
                    filtered_records.append(record)
                    break
    return filtered_records
def contains_list(filter: Dict) -> bool:
    if isinstance(filter, dict):
        for key, value in filter.items():
            if isinstance(value, list) and len(value) > 0:
                return True
            return contains_list(value)
    return False
def validate_filters(filter: FilterCriteria) -> bool:
    
    for rule in filter["Filters"]:
        try:
            if not (filter_pattern := json.loads(rule["Pattern"])):
                return False
            return contains_list(filter_pattern)
        except json.JSONDecodeError:
            return False
    
    
    return True
def function_name_from_arn(arn: str):