I am trying to label a line which contains 431 segments. I need to label each segment with a simple GIS_ID number. When I label the segments, many go unlabeled. Is there any way I can label all 431 segments?
Try using ArcGIS Maplex Engine or the 'Label' toolbar in ArcMap.
From here, you can turn on 'View Unplaced Labels' and see whether or not they are being calculated. Likely, as @wmebane commented above, they are there, you're just zoomed out at an extent that makes it impossible to view. If you are working on creating these for a printable map, make sure you switch to 'Layout View' and have the page settings correct. Here, you will see red splotches where the labels are not being created, or black where they are.
It's also possible that you have labels stacked upon each other and may need to offset them. These settings can all be handled in the Label Manager.
To check which label engine you are using, in ArcMap right-click on 'Layers' in your Table of contents > Properties and select your label engine in the drop down (if available).
If you have Maplex in your properties of the layer you're trying to label you can force it to label every segment by going to the layer you want to label and
open the layer properties > 'Placement Properties' > under the 'Conflict Resolution' tab select "'Never Remove' (place overlapping)"
For the standard label engine you may need to play around with the settings. Again open the layer properties for the layer you wish to label and try I would select under 'Placement Properties' select "Place one laber per feature part".
Under 'Conflict Detection' update Feature Weight to 'High'. And check on 'Place overlapping labels' at the bottom