@@ -246,7 +246,7 @@ export const specialisedAzure: Record<AzureScenario, Section[]> = {
246
246
{
247
247
id : 'az_route_table_diff' ,
248
248
label :'Compare UDR vs system routes (effective route table)' ,
249
- cmd : 'az network watcher route-table list-effective --vm <vm> --resource-group <rg> --output table'
249
+ cmd : 'az network watcher route-table list-effective --vm <vm> --resource-group RGName --output table'
250
250
} ,
251
251
{
252
252
id : 'az_service_tags' ,
@@ -261,7 +261,7 @@ export const specialisedAzure: Record<AzureScenario, Section[]> = {
261
261
{
262
262
id : 'az_vhub_routes' ,
263
263
label :'Dump vWAN Hub effective routes' ,
264
- cmd : 'az network vhub get-effective-routes --name <hub> --resource-group <rg> --output table'
264
+ cmd : 'az network vhub get-effective-routes --name <hub> --resource-group RGName --output table'
265
265
}
266
266
]
267
267
} ,
@@ -286,7 +286,7 @@ export const specialisedAzure: Record<AzureScenario, Section[]> = {
286
286
{
287
287
id : 'az_ddos_status' ,
288
288
label :'Query DDoS Rapid Response status' ,
289
- cmd : 'az network ddos-protection show --name <plan> --resource-group <rg> '
289
+ cmd : 'az network ddos-protection show --name <plan> --resource-group RGName '
290
290
}
291
291
]
292
292
}
@@ -973,100 +973,96 @@ export const checklist: Record<Platform, Section[]> = {
973
973
// END Ciena SAOS - advanced checklist
974
974
975
975
// BEGIN Microsoft Azure – advanced (network‑centric)
976
- azure : [
976
+ azure : [
977
977
{
978
978
title : 'Subscription & Service Health' ,
979
979
items : [
980
- { id : 'az_health' , label : 'Current Azure-wide service issues' , cmd : 'az service-health show --query issues --output table' } ,
981
- { id : 'az_res_health' , label : 'Resource Health – VNets / NICs / LBs' , cmd : 'az resource-health list-by-resource --resource-type Microsoft.Network' } ,
982
- { id : 'az_activity' , label : 'Activity-log failures (last 200)' , cmd : 'az monitor activity-log list --status Failed --max-events 200' } ,
983
- { id : 'az_change' , label : 'Change-analysis diff – network resources' , cmd : 'az resource-graph query --query "Resources | where type =~ \'Microsoft.Network\'"' }
980
+ { id : 'az_health_sub' , label : 'Verify your current subscription' , cmd : 'az account show --output table' } ,
981
+ { id : 'az_health_list_sub' , label : 'List Tenant wide subscriptions' , cmd : 'az account list --output table' } ,
982
+ { id : 'az_health_set_sub' , label : 'Set the desired subscription' , cmd : 'az account set --subscription SubID-OR-Name' } ,
983
+ { id : 'az_health_list_rg' , label : 'List Resource Groups' , cmd : 'az group list --output table' } ,
984
+ { id : 'az_health_list_res' , label : 'List all Resources in RG' , cmd : 'az resource list -g RGName --output table' } ,
985
+ { id : 'az_health_list_vms' , label : 'List all VM in RG' , cmd : 'az vm list -g RGName --show-details --output table' } ,
986
+ { id : 'az_health_list_pri' , label : 'List all VM in RG including Private IPs' , cmd : 'az vm list -g RGName --show-details --query "[].{Name:name, PrivateIP:privateIps, PublicIP:publicIps, PowerState:powerState}" --output table' } ,
987
+ { id : 'az_health_pcap' , label : 'Execute packet capture' , cmd : 'az network watcher packet-capture create --name myCapture --resource-group RGName --vm VMName --storage-account StorageAccountName --file-path captures/myCapture.pcap' } ,
988
+ { id : 'az_health' , label : 'Current Azure-wide service issues' , cmd : 'az graph query -q "ServiceHealthResources | project id, properties" --output table' } ,
989
+ { id : 'az_activity' , label : 'Lists the 200 most recent failed operations from Azure Activity Logs.' , cmd : 'az monitor activity-log list --status Failed --max-events 200 --output table' }
984
990
]
985
991
} ,
986
992
{
987
993
title : 'Connectivity Diagnostics (Network Watcher)' ,
988
994
items : [
989
- { id : 'az_conn_tr' , label : 'Single-hop connectivity test' , cmd : 'az network watcher test-connectivity --source-resource <vm> --dest-address <ip> --dest-port 443' } ,
990
- { id : 'az_conn_check' , label : 'Multi-hop connectivity path' , cmd : 'az network watcher test-connectivity --source-resource <vmA> --dest-resource <vmB> ' } ,
991
- { id : 'az_topology ' , label : 'Topology map (JSON) ' , cmd : 'az network watcher show-topology --location <region> ' }
995
+ { id : 'az_conn_tr' , label : 'Single-hop connectivity test' , cmd : 'az network watcher test-connectivity --source-resource VMName --resource-group RGName -- dest-address 1.1.1.1 --dest-port 443' } ,
996
+ { id : 'az_conn_check' , label : 'Multi-hop connectivity path' , cmd : 'az network watcher test-connectivity --source-resource VMName --dest-resource VMName ' } ,
997
+ { id : 'az_health_gen_rg ' , label : 'Generate Resource Groups topology ' , cmd : 'az network watcher show-topology -g RGName --output json > RGName-topology.json ' }
992
998
]
993
999
} ,
994
1000
{
995
1001
title : 'Effective Policy Evaluation' ,
996
1002
items : [
997
- { id : 'az_effective_nsg' , label : 'Effective NSG – NIC & subnet' , cmd : 'az network nic show-effective-nsg --ids <nicId>' } ,
998
- { id : 'az_effective_route' , label : 'Effective route table' , cmd : 'az network nic show-effective-route-table --ids <nicId>' }
1003
+ { id : 'az_effective_nsg' , label : 'List all VM NICs' , cmd : 'az vm nic list --resource-group RGName --vm-name VMName --query "[].id" -o tsv' } ,
1004
+ { id : 'az_effective_nsg' , label : 'Shows the effective Network Security Groups (NSGs) applied to a network interface specified by its resource ID.' , cmd : 'az network nic list-effective-nsg --ids VM-NIC-ID --query "effectiveNetworkSecurityGroups[].name" --output json > VM-NIC-ID_VMName.json' } ,
1005
+ { id : 'az_effective_route' , label : 'Shows effective route table of the VM NIC' , cmd : 'az network nic show-effective-route-table --ids VM-NIC-ID --output table' }
999
1006
]
1000
1007
} ,
1001
1008
{
1002
1009
title : 'Packet & Flow Inspection' ,
1003
1010
items : [
1004
- { id : 'az_pcap_start' , label : 'Start packet capture (5 min)' , cmd : 'az network watcher packet-capture create --vm <vmId> --file-path /capt/cap1 --time-limit 300' } ,
1005
- { id : 'az_pcap_dl' , label : 'Download packet capture file' , cmd : 'az network watcher packet-capture show --resource-group <rg> --vm <vmId> --name cap1 --query storageLocation.filePath' } ,
1006
- { id : 'az_flow' , label : 'Enable NSG flow-logs + analytics' , cmd : 'az network watcher flow-log configure --nsg <nsgId> --enabled true --traffic-analytics' }
1011
+ { id : 'az_pcap_start' , label : 'Start packet capture (5 min)' , cmd : 'az network watcher packet-capture create --vm VM-ID --file-path /capt/cap1 --time-limit 300' } ,
1012
+ { id : 'az_pcap_dl' , label : 'Download packet capture file' , cmd : 'az network watcher packet-capture show --resource-group RGName --vm VM-ID --name cap1 --query storageLocation.filePath' } ,
1013
+ { id : 'az_flow' , label : 'Enable NSG flow-logs + analytics' , cmd : 'az network watcher flow-log configure --nsg nsgId --enabled true --traffic-analytics' } ,
1014
+ { id : 'az_ipflow' , label : 'IP Flow Verify' , cmd : 'az network watcher test-ip-flow --local srcIP --remote dstIP --port 443 --protocol TCP' } ,
1015
+ { id : 'az_next_hop' , label : 'Next-hop lookup' , cmd : 'az network watcher show-next-hop --source-ip srcIP --dest-ip dstIP' } ,
1016
+ { id : 'az_nsg_watch' , label : 'Real-time NSG hit counters' , cmd : 'watch -n1 az network watcher nsg-flow-log show --location region --nsg-name nsg' } ,
1017
+ { id : 'az_conn_monitor' , label : 'Connection Monitor list' , cmd : 'az network watcher connection-monitor list --location region' } ,
1018
+ { id : 'az_vm_netstat' , label : 'In-guest netstat via Run Command' , cmd : 'az vm run-command invoke --command-id RunShellScript --scripts "ss -ant" --ids VM-ID' }
1007
1019
]
1008
1020
} ,
1009
1021
{
1010
1022
title : 'NIC-level Telemetry' ,
1011
1023
items : [
1012
- { id : 'az_nic_metrics' , label : 'NIC packet counters (Monitor)' , cmd : 'az monitor metrics list --resource <nicId> --metric "NetworkPacketsIn,NetworkPacketsOut"' } ,
1013
- { id : 'az_accel_net' , label : 'SR-IOV / accelerated-networking stats' , cmd : 'az vm nic-show-detail --ids <nicId> --query "srIovStats"' }
1024
+ { id : 'az_nic_metrics' , label : 'NIC packet counters (Monitor)' , cmd : 'az monitor metrics list --resource VM-NIC-ID --metric "PacketsReceivedRate,PacketsSentRate" --output table' } ,
1025
+ { id : 'az_accel_net_check' , label : 'Check if the VM size supports SR-IOV' , cmd : 'az network nic show --ids VM-NIC-ID --query "enableAcceleratedNetworking"' } ,
1026
+ { id : 'az_accel_net' , label : 'SR-IOV / accelerated-networking stats' , cmd : 'az network nic show --ids VM-NIC-ID --query "srIovStats"' }
1014
1027
]
1015
1028
} ,
1016
1029
{
1017
- title : 'Load Balancer ' ,
1030
+ title : 'Load Balancers ' ,
1018
1031
items : [
1019
- { id : 'az_lb_backend ' , label : 'LB backend health ' , cmd : 'az network lb show-backend-health --lb-name <lb> --resource-group <rg> ' } ,
1020
- { id : 'az_lb_probe' , label : 'LB probe status ' , cmd : 'az network lb probe show --lb-name <lb> --name <probe> --resource-group <rg> ' } ,
1021
- { id : 'az_lb_snat ' , label : 'SNAT port utilisation ' , cmd : 'az monitor metrics list --resource <lbId> --metric SnatConnectionCount ' }
1032
+ { id : 'az_lb_backend_list ' , label : 'List Load Balancers ' , cmd : 'az network lb list --resource-group RGName --output table ' } ,
1033
+ { id : 'az_lb_probe' , label : 'Check Load Balancer Health Probes ' , cmd : 'az network lb probe list --resource-group RGName --lb- name LB-Name --output table ' } ,
1034
+ { id : 'az_lb_bck_pool ' , label : 'Check and list the backend address pools ' , cmd : 'az network lb address-pool list --resource-group RGName --lb-name LB-Name --output table ' }
1022
1035
]
1023
1036
} ,
1024
1037
{
1025
1038
title : 'App Gateway / WAF' ,
1026
1039
items : [
1027
- { id : 'az_appgw_health' , label : 'App Gateway backend health' , cmd : 'az network application-gateway show-backend-health --name <agw> --resource-group <rg>' } ,
1028
- { id : 'az_appgw_waf' , label : 'WAF log query (KQL)' , cmd : '"AzureDiagnostics | where ResourceType==\'APPLICATIONGATEWAYFIREWALL\'"' }
1029
- ]
1030
- } ,
1031
- {
1032
- title : 'Azure Firewall' ,
1033
- items : [
1034
- { id : 'az_afw_logs' , label : 'Firewall rule hits (KQL)' , cmd : '"AzureDiagnostics | where Category==\'AzureFirewallNetworkRule\'"' }
1040
+ { id : 'az_appgw_list' , label : 'List Application Gateways' , cmd : 'az network application-gateway list --resource-group RGName --output table' } ,
1041
+ { id : 'az_appgw_health' , label : 'Check App Gateway backend health' , cmd : 'az network application-gateway show-backend-health --name AGW-name --resource-group RGName --output table' } ,
1042
+ { id : 'az_appgw_httpsliste' , label : 'List HTTP(S) Listeners' , cmd : 'az network application-gateway show-backend-health --name AGW-name --resource-group RGName --output table' } ,
1043
+ { id : 'az_appgw_use' , label : 'Which VMs use the Application Gateway' , cmd : 'az network application-gateway show --name appgw-name --resource-group RGName --query "backendAddressPools" --output table' } ,
1044
+ { id : 'az_appgw_httpsbkliste' , label : 'List Backend HTTP Settings' , cmd : 'az network application-gateway http-settings list --gateway-name appgw-name --resource-group RGName --output table' } ,
1045
+ { id : 'az_appgw_routerules' , label : 'List Request Routing Rules' , cmd : 'az network application-gateway rule list --gateway-name appgw-name --resource-group RGName --output table' } ,
1035
1046
]
1036
1047
} ,
1037
1048
{
1038
1049
title : 'Routing & Hybrid connectivity' ,
1039
1050
items : [
1040
- { id : 'az_ars_bgp' , label : 'Route Server BGP peer status' , cmd : 'az network route-server peering list --resource-group <rg> --name <rs>' } ,
1041
- { id : 'az_er_vpn' , label : 'VPN / ExpressRoute IPSec stats' , cmd : 'az network vpn-connection list-ipsec-ike-stats --name <conn> --resource-group <rg>' } ,
1042
- { id : 'az_vwan' , label : 'Virtual WAN connection health' , cmd : 'az network vwan list-connections --vwan-name <vw> --resource-group <rg>' } ,
1043
- { id : 'az_vnet_peering' , label : 'VNet-peering flags & state' , cmd : 'az network vnet peering show --vnet-name <vnet> --name <peer> --resource-group <rg>' }
1051
+ { id : 'az_list_vpn' , label : 'List VPN Connections in a Resource Group' , cmd : 'az network vpn-connection list --resource-group RGName --output table' } ,
1052
+ { id : 'az_er_vpn' , label : 'VPN / ExpressRoute IPSec stats' , cmd : 'az network vpn-connection list-ipsec-ike-stats --name conn --resource-group RGName' } ,
1053
+ { id : 'az_vwan_list' , label : 'List Virtual WAN' , cmd : 'az network vwan list --output table' } ,
1054
+ { id : 'az_vwan' , label : 'Virtual WAN connection health' , cmd : 'az network vwan list-connections --vwan-name vw --resource-group RGName' } ,
1055
+ { id : 'az_vnet_peering' , label : 'VNet-peering flags & state' , cmd : 'az network vnet peering show --vnet-name vnet --name peer --resource-group RGName' }
1044
1056
]
1045
1057
} ,
1046
1058
{
1047
1059
title : 'Private Link / DNS' ,
1048
1060
items : [
1049
- { id : 'az_priv_dns' , label : 'Private DNS zone-to-VNet links' , cmd : 'az network private-dns link vnet list --zone-name <zone> --resource-group <rg>' } ,
1050
- { id : 'az_dns' , label : 'Internal DNS resolve test (168.63.129.16)' , cmd : 'dig @168.63.129.16 <fqdn>' }
1051
- ]
1052
- } ,
1053
- {
1054
- title : 'Security & Protection' ,
1055
- items : [
1056
- { id : 'az_ddos' , label : 'DDoS plan Under-Attack metric' , cmd : 'az monitor metrics list --resource <planId> --metric UnderDDoSAttack' } ,
1057
- { id : 'az_monitor_alerts' , label : 'NSG counter alert query (KQL)' , cmd : '"AzureNetworkAnalytics_CL | summarize count()"' }
1061
+ { id : 'list_az_priv_dns' , label : 'List all Private DNS zones in a resource group' , cmd : 'az network private-dns zone list --resource-group RGName --output table' } ,
1062
+ { id : 'az_priv_dns' , label : 'List Private DNS zone-to-VNet links' , cmd : 'az network private-dns link vnet list --zone-name zone --resource-group RGName --output table' } ,
1063
+ { id : 'az_dns' , label : 'Internal DNS resolve test (168.63.129.16)' , cmd : 'dig @168.63.129.16 <fqdn>' }
1058
1064
]
1059
1065
} ,
1060
- {
1061
- title : 'Cloud Shell / advanced helpers' ,
1062
- items : [
1063
- { id : 'az_ipflow' , label : 'IP Flow Verify' , cmd : 'az network watcher test-ip-flow --local <srcIP> --remote <dstIP> --port 443 --protocol TCP' } ,
1064
- { id : 'az_next_hop' , label : 'Next-hop lookup' , cmd : 'az network watcher show-next-hop --source-ip <srcIP> --dest-ip <dstIP>' } ,
1065
- { id : 'az_nsg_watch' , label : 'Real-time NSG hit counters' , cmd : 'watch -n1 az network watcher nsg-flow-log show --location <region> --nsg-name <nsg>' } ,
1066
- { id : 'az_conn_monitor' , label : 'Connection Monitor list' , cmd : 'az network watcher connection-monitor list --location <region>' } ,
1067
- { id : 'az_vm_netstat' , label : 'In-guest netstat via Run Command' , cmd : 'az vm run-command invoke --command-id RunShellScript --scripts "ss -ant" --ids <vmId>' }
1068
- ]
1069
- }
1070
1066
] ,
1071
1067
// END Microsoft Azure – advanced (network‑centric)
1072
1068
0 commit comments