package com.tongran.system.api.domain;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.util.List;

@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class NetworkInfo {
    // 运营商
    @JsonProperty("carrier")
    private String carrier;
    // 市
    @JsonProperty("city")
    private String city;
    // 网关
    @JsonProperty("gateway")
    private String gateway;
    // IPv4 地址
    @JsonProperty("ipv4")
    private String ipv4;
    // IPv4 地址
    @JsonProperty("ipv6")
    private String ipv6;
    // MAC 地址
    @JsonProperty("mac")
    private String mac;
    // 接口名称：eth0, enp3s0
    @JsonProperty("name")
    private String name;
    // 省
    @JsonProperty("province")
    private String province;
    // 公网 IP
    @JsonProperty("publicIp")
    private String publicIp;
    @JsonProperty("type")
    private String type;
    /** 与外网的连通性(0否，1是) */
    @JsonProperty("status")
    private String status;
    // 如果是子接口，存储父接口名称
    @JsonProperty("parentInterface")
    private String parentInterface;
    /** 网卡创建时间 */
    @JsonProperty("netCreateTime")
    private Long netCreateTime;

    // 如果是父接口，存储子接口列表
    @JsonProperty("subInterfaces")
    private List<NetworkInfo> subInterfaces;
}
